js-mentorship-razvan / javascript

Javascript study notes
GNU General Public License v3.0
22 stars 2 forks source link

Subtract the Sum #346

Closed RazvanBugoi closed 4 years ago

RazvanBugoi commented 5 years ago

https://www.codewars.com/kata/subtract-the-sum/train/javascript

RazvanBugoi commented 4 years ago
function SubtractSum(n){
  let fruits = {
1:'kiwi',
2:'pear',
3:'kiwi',
4:'banana',
5:'melon',
6:'banana',
7:'melon',
8:'pineapple',
9:'apple',
10:'pineapple',
11:'cucumber',
12:'pineapple',
13:'cucumber',
14:'orange',
15:'grape',
16:'orange',
17:'grape',
18:'apple',
19:'grape',
20:'cherry',
21:'pear',
22:'cherry',
23:'pear',
24:'kiwi',
25:'banana',
26:'kiwi',
27:'apple',
28:'melon',
29:'banana',
30:'melon',
31:'pineapple',
32:'melon',
33:'pineapple',
34:'cucumber',
35:'orange',
36:'apple',
37:'orange',
38:'grape',
39:'orange',
40:'grape',
41:'cherry',
42:'pear',
43:'cherry',
44:'pear',
45:'apple',
46:'pear',
47:'kiwi',
48:'banana',
49:'kiwi',
50:'banana',
51:'melon',
52:'pineapple',
53:'melon',
54:'apple',
55:'cucumber',
56:'pineapple',
57:'cucumber',
58:'orange',
59:'cucumber',
60:'orange',
61:'grape',
62:'cherry',
63:'apple',
64:'cherry',
65:'pear',
66:'cherry',
67:'pear',
68:'kiwi',
69:'pear',
70:'kiwi',
71:'banana',
72:'apple',
73:'banana',
74:'melon',
75:'pineapple',
76:'melon',
77:'pineapple',
78:'cucumber',
79:'pineapple',
80:'cucumber',
81:'apple',
82:'grape',
83:'orange',
84:'grape',
85:'cherry',
86:'grape',
87:'cherry',
88:'pear',
89:'cherry',
90:'apple',
91:'kiwi',
92:'banana',
93:'kiwi',
94:'banana',
95:'melon',
96:'banana',
97:'melon',
98:'pineapple',
99:'apple',
100:'pineapple'
};
  let sum = n - String(n).split('').map((el) => Number(el)).reduce((a,b) => a+b, 0);
  return sum in fruits ? fruits[sum] : 'back to task 1, help, Ovi!!!' 

}
RazvanBugoi commented 4 years ago
function SubtractSum(n){
 let fruits = {
1:'kiwi',
2:'pear',
3:'kiwi',
4:'banana',
5:'melon',
6:'banana',
7:'melon',
8:'pineapple',
9:'apple',
10:'pineapple',
11:'cucumber',
12:'pineapple',
13:'cucumber',
14:'apple',
15:'grape',
16:'orange',
17:'grape',
18:'apple',
19:'grape',
20:'cherry',
21:'pear',
22:'cherry',
23:'pear',
24:'kiwi',
25:'banana',
26:'kiwi',
27:'apple',
28:'melon',
29:'banana',
30:'melon',
31:'pineapple',
32:'melon',
33:'pineapple',
34:'cucumber',
35:'orange',
36:'apple',
37:'orange',
38:'grape',
39:'orange',
40:'grape',
41:'cherry',
42:'pear',
43:'cherry',
44:'pear',
45:'apple',
46:'pear',
47:'kiwi',
48:'banana',
49:'kiwi',
50:'banana',
51:'melon',
52:'pineapple',
53:'melon',
54:'apple',
55:'cucumber',
56:'pineapple',
57:'cucumber',
58:'orange',
59:'cucumber',
60:'orange',
61:'grape',
62:'cherry',
63:'apple',
64:'cherry',
65:'pear',
66:'cherry',
67:'pear',
68:'kiwi',
69:'pear',
70:'kiwi',
71:'banana',
72:'apple',
73:'banana',
74:'melon',
75:'pineapple',
76:'melon',
77:'pineapple',
78:'cucumber',
79:'pineapple',
80:'cucumber',
81:'apple',
82:'grape',
83:'orange',
84:'grape',
85:'cherry',
86:'grape',
87:'cherry',
88:'pear',
89:'cherry',
90:'apple',
91:'kiwi',
92:'banana',
93:'kiwi',
94:'banana',
95:'melon',
96:'banana',
97:'melon',
98:'pineapple',
99:'apple',
100:'pineapple'
}; 

  let newN = n - String(n).split('').map((el) => Number(el)).reduce((a,b) => a+b, 0);
  if(fruits[newN]) return fruits[newN];
  return SubtractSum(newN);
}