Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve(param){
- let tasks = param.shift().split(' ').map(Number);
- for(let element of param){
- let [command,item,time] = element.split(' ');
- if(command === 'End'){
- break;
- }
- switch(command){
- case 'Complete':
- let index = +item;
- if(index >= 0 && index < tasks.length){
- if(tasks.includes(index)){
- tasks.splice(index,1,0);
- }
- }
- ;break;
- case 'Change':
- let ind = +item;
- let timeTask = +time;
- if(ind >= 0 && ind < tasks.length){
- if(tasks.includes(ind)){
- tasks.splice(ind,1,timeTask)
- }
- }
- ;break;
- case 'Drop':
- let indexHour = +item;
- if(indexHour >= 0 && indexHour < tasks.length){
- if(tasks.includes(indexHour)){
- tasks.splice(indexHour,1,-1);
- }
- }
- ;break;
- case 'Count':
- if(item === 'Completed'){
- let countCompleted = tasks.filter(el => el === 0);
- console.log(countCompleted.length);
- }
- else if(item === 'Incomplete'){
- let countIncomplete = tasks.filter(el => el > 0);
- console.log(countIncomplete.length);
- }
- else if(item === 'Dropped'){
- let countDropped = tasks.filter(el => el < 0);
- console.log(countDropped.length);
- }
- ;break;
- }
- }
- let incompleteTasks = tasks.filter(el => el > 0);
- console.log(incompleteTasks.join(' '))
- }
- solve([
- '1 -1 2 3 4 5',
- 'Complete 4',
- 'Change 0 4',
- 'Drop 3',
- 'Count Dropped',
- 'End'
- ]
- );
- // solve([
- // '1 2 3 4 5 4 0 3 2 1',
- // 'Complete 0',
- // 'Complete 1',
- // 'Complete 2',
- // 'Drop 3',
- // 'Change 4 1',
- // 'Count Completed',
- // 'End'
- // ]
- // )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement