Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function taskPlanner(input) {
- let taskHours = input.shift().split(' ');
- taskHours = taskHours.map(Number).filter((el) => {
- return el >= -1 && el <= 5;
- });
- for (let line of input) {
- if (line === 'End') {
- break;
- }
- let tokens = line.split(' ');
- let command = tokens[0];
- if (command === 'Complete') {
- let index = Number(tokens[1]);
- if (index >= 0 && index < taskHours.length) {
- taskHours[index] = 0;
- }
- } else if (command === 'Change') {
- let index = Number(tokens[1]);
- let time = Number(tokens[2]);
- if (index >= 0 && index < taskHours.length) {
- taskHours[index] = time;
- }
- } else if (command === 'Drop') {
- let index = Number(tokens[1]);
- if (index >= 0 && index < taskHours.length) {
- taskHours[index] = -1;
- }
- } else if (command === 'Count') {
- if (tokens[1] === 'Completed') {
- let completedTasks = taskHours.map(Number).filter(el => {
- return el === 0;
- });
- console.log(completedTasks.length);
- } else if (tokens[1] === 'Incomplete') {
- let incompletedTasks = taskHours.map(Number).filter(el => {
- return el !== 0 && el !== -1;
- });
- console.log(incompletedTasks.length);
- } else if (tokens[1] === 'Dropped') {
- let droppedTasks = taskHours.map(Number).filter(el => {
- return el === -1;
- });
- console.log(droppedTasks.length);
- }
- }
- }
- let incompletedTaskscl = taskHours.map(Number).filter(el => {
- return el !== 0 && el !== -1;
- });
- console.log(incompletedTaskscl.join(' '));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement