Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function cloudManager(input) { debugger;
- var result = {};
- for (var i = 0; i < input.length; i++) {
- var line = input[i].split(' ');
- var name = line[0];
- var extension = line[1];
- var memory1 = parseFloat(line[2]);
- if (!(extension in result)) {
- result[extension] = {names: [], memory: []};
- }
- if (result[extension].names.indexOf(name) == -1) {
- result[extension].names.push(name);
- }
- result[extension].memory.push(memory1);
- }
- var output = {};
- var sortedExtensions = Object.keys(result).sort();
- for (var e in sortedExtensions) {
- var fileType = sortedExtensions[e];
- var fileInfo = {
- files: result[extension].names.sort(),
- memory: totalMemory(result[extension].memory)
- }
- output[fileType] = fileInfo;
- }
- function totalMemory(arr) {
- var sum = 0;
- for (var i in arr) {
- sum += arr[i];
- }
- return sum.toFixed(2);
- }
- console.log(JSON.stringify(output));
- }
- cloudManager(['sentinel .exe 15MB',
- 'zoomIt .msi 3MB',
- 'skype .exe 45MB',
- 'trojanStopper .bat 23MB',
- 'kindleInstaller .exe 120MB',
- 'setup .msi 33.4MB',
- 'winBlock .bat 1MB'])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement