diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/19. \354\235\214\354\226\221 \353\215\224\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/19. \354\235\214\354\226\221 \353\215\224\355\225\230\352\270\260.js" new file mode 100644 index 00000000..e7972ad7 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/19. \354\235\214\354\226\221 \353\215\224\355\225\230\352\270\260.js" @@ -0,0 +1,16 @@ +function solution(absolutes, signs) { + // absolutes 배열에 signs 배열을 반영 + // signs 배열에서 true는 +, false는 -를 말한다. + // 일단 signs 배열의 boolean 요소를 +1 또는 -1로 바꿔주고, + // absolutes 배열의 각 요소에 곱한 다음 + // result에 다 더해서 최종 값을 구하면 되지않을까? + let newSigns = signs.map((el) => (el === true ? 1 : -1)); + + let result = 0; + + for (let i = 0; i < absolutes.length; i++) { + result += absolutes[i] * newSigns[i]; + } + + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/20. \354\227\206\353\212\224 \354\210\253\354\236\220 \353\215\224\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/20. \354\227\206\353\212\224 \354\210\253\354\236\220 \353\215\224\355\225\230\352\270\260.js" new file mode 100644 index 00000000..2c966286 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/20. \354\227\206\353\212\224 \354\210\253\354\236\220 \353\215\224\355\225\230\352\270\260.js" @@ -0,0 +1,12 @@ +function solution(numbers) { + let base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]; + + let result = 0; + + for (let i = 0; i < base.length; i++) { + if (numbers.includes(base[i]) === false) { + result += base[i]; + } + } + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/21. \352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/21. \352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" new file mode 100644 index 00000000..c2f7edb1 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/21. \352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" @@ -0,0 +1,19 @@ +function solution(s) { + // s의 길이가 홀수라면, 가운데 글자를 반환 + // s의 길이가 짝수라면, 가운데 두 글자를 반환 + // 먼저 s의 길이가 홀수인지 짝수인지 분기 나눔 + // 길이를 2로 나눈 값의 인덱스를 찾으면 가운데 글자인거 아닐까? + + let char = s.split(""); + let mid = ""; + let length = char.length; + + if (char.length % 2 === 0) { + // 길이가 짝수 + mid = char[length / 2 - 1] + char[length / 2]; + } else { + // 길이가 홀수 + mid = char[Math.floor(length / 2)]; + } + return mid; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/22. \354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230?.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/22. \354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230?.js" new file mode 100644 index 00000000..a55f6786 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/22. \354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230?.js" @@ -0,0 +1,12 @@ +function solution(n) { + //n의 인덱스가 홀수면 수, 짝수면 박으로 입력해주기 + let result = ""; + for (let i = 1; i <= n; i++) { + if (i % 2 === 0) { + result += "박"; + } else if (i % 2 === 1) { + result += "수"; + } + } + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/23. \353\202\264\354\240\201.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/23. \353\202\264\354\240\201.js" new file mode 100644 index 00000000..b7d4902e --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/23. \353\202\264\354\240\201.js" @@ -0,0 +1,7 @@ +function solution(a, b) { + let result = 0; + for (let i = 0; i < a.length; i++) { + result += a[i] * b[i]; + } + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week04/24. \353\254\270\354\236\220\354\227\264 \353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234 \353\260\260\354\271\230\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/24. \353\254\270\354\236\220\354\227\264 \353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234 \353\260\260\354\271\230\355\225\230\352\270\260.js" new file mode 100644 index 00000000..ed83c72b --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week04/24. \353\254\270\354\236\220\354\227\264 \353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234 \353\260\260\354\271\230\355\225\230\352\270\260.js" @@ -0,0 +1,10 @@ +function solution(s) { + return s + .split("") + .sort((a, b) => { + if (a > b) return -1; + else if (a < b) return 1; + else return 0; + }) + .join(""); +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/25. \353\254\270\354\236\220\354\227\264 \353\213\244\353\243\250\352\270\260 \352\270\260\353\263\270.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/25. \353\254\270\354\236\220\354\227\264 \353\213\244\353\243\250\352\270\260 \352\270\260\353\263\270.js" new file mode 100644 index 00000000..1b059bd5 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/25. \353\254\270\354\236\220\354\227\264 \353\213\244\353\243\250\352\270\260 \352\270\260\353\263\270.js" @@ -0,0 +1,16 @@ +function solution(s) { + let number = "1234567890"; + let result = false; + + if (s.length === 4 || s.length === 6) { + for (let i = 0; i < s.length; i++) { + if (number.includes(s[i]) === true) { + result = true; + } else { + result = false; + break; + } + } + } + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/26. \354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/26. \354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" new file mode 100644 index 00000000..34946517 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/26. \354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" @@ -0,0 +1,15 @@ +function solution(left, right) { + let result = 0; + for (let i = left; i <= right; i++) { + let arr = []; + for (let n = 1; n <= i; n++) { + if (i % n === 0) { + arr.push(n); + } + } + !(arr.length % 2) + ? (result += arr[arr.length - 1]) + : (result -= arr[arr.length - 1]); + } + return result; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/27. \353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/27. \353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" new file mode 100644 index 00000000..577dd56b --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/27. \353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" @@ -0,0 +1,16 @@ +function solution(price, money, count) { + // 놀이기구를 탈때마다 이용료가 상승. price * count + // count가 4이고, price가 3이면 => 3+6+9+12 = 30 + // 최종 금액에서 내가 가진 money를 뺀 금액을 리턴 + let sum = 0; + let ans = 0; + for (let i = 1; i <= count; i++) { + sum = sum + price * i; + if (sum < money) { + ans = 0; + } else if (sum > money) { + ans = sum - money; + } + } + return ans; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/28. \355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/28. \355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" new file mode 100644 index 00000000..04f350f5 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/28. \355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" @@ -0,0 +1,4 @@ +function solution(arr1, arr2) { + //arr1[0][0]과 arr2[0][0]을 더해야한다 + return arr1.map((a, i) => a.map((b, j) => b + arr2[i][j])); +} diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/29. \354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204\354\260\215\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/29. \354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204\354\260\215\352\270\260.js" new file mode 100644 index 00000000..23661f95 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/29. \354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204\354\260\215\352\270\260.js" @@ -0,0 +1,13 @@ +process.stdin.setEncoding("utf8"); +process.stdin.on("data", (data) => { + const n = data.split(" "); + const a = Number(n[0]), + b = Number(n[1]); + let str = ""; + for (let i = 0; i < b; i++) { + for (let j = 0; j < a; j++) { + str = str + "*"; + } + str = str + `\n`; + } +}); diff --git "a/\354\210\230\354\232\224\354\235\274/Insun/Week05/30. \354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/30. \354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" new file mode 100644 index 00000000..19ce92b6 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Insun/Week05/30. \354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" @@ -0,0 +1,21 @@ +function solution(n, m) { + let answer = []; + + let gcd = 0; // 최대공약수 + let lcm = 0; // 최소공배수 + + let num = n > m ? n : m; + + // 최대공약수 구하기 + for (let i = 1; i <= num; i++) { + if (n % i === 0 && m % i === 0) { + gcd = i; + } + } + // 최소공배수 구하기 + // 두 수의 곱 = 최소공약수 * 최소공배수 + //n*m = gcd*lcm + lcm = (n * m) / gcd; + answer = [gcd, lcm]; + return answer; +} diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/1.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/1.js" new file mode 100644 index 00000000..753a47b0 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/1.js" @@ -0,0 +1,27 @@ +// 음양 더하기 + + +//1. signs를 풀어서 부호화 시키고 +//2. 배열의 길이가 같으니깐 for문 돌려서 부호와 숫자를 합치고 Number 타입으로 만들어서 +//3. answer에 누적시킴 +function solution(absolutes, signs) { + var answer = 0; + let a = [] + signs.map((el) => el === true ? a.push('+') : a.push('-')) + + for (let i = 0; i < a.length; i++) { + answer += Number(a[i] + absolutes[i]) + } + + return answer; +} + +// 테스트 1 〉 통과 (0.36ms, 33.6MB) +// 테스트 2 〉 통과 (0.38ms, 33.6MB) +// 테스트 3 〉 통과 (0.38ms, 33.6MB) +// 테스트 4 〉 통과 (0.38ms, 33.6MB) +// 테스트 5 〉 통과 (0.38ms, 33.5MB) +// 테스트 6 〉 통과 (0.36ms, 33.5MB) +// 테스트 7 〉 통과 (0.37ms, 33.6MB) +// 테스트 8 〉 통과 (0.38ms, 33.5MB) +// 테스트 9 〉 통과 (0.38ms, 33.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/2.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/2.js" new file mode 100644 index 00000000..587ae9e8 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/2.js" @@ -0,0 +1,24 @@ +//없는 숫자 더하기 + + +function solution(numbers) { + var answer = 0; + let arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] + for (let i = 0; i < arr.length; i++) { + if (numbers.includes(arr[i]) === false) { + answer += arr[i] + } + } + return answer; +} + + +// 테스트 1 〉 통과 (0.05ms, 33.6MB) +// 테스트 2 〉 통과 (0.04ms, 33.5MB) +// 테스트 3 〉 통과 (0.04ms, 33.6MB) +// 테스트 4 〉 통과 (0.04ms, 33.6MB) +// 테스트 5 〉 통과 (0.05ms, 33.7MB) +// 테스트 6 〉 통과 (0.04ms, 33.6MB) +// 테스트 7 〉 통과 (0.04ms, 33.6MB) +// 테스트 8 〉 통과 (0.04ms, 33.6MB) +// 테스트 9 〉 통과 (0.04ms, 33.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/3.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/3.js" new file mode 100644 index 00000000..9d569148 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/3.js" @@ -0,0 +1,23 @@ +// 가운데 글자 가져오기 + + +function solution(s) { + return s.length % 2 === 0 ? s[s.length / 2 - 1] + s[s.length / 2] : s[Math.floor(s.length / 2)] +} + +// 테스트 1 〉 통과 (0.03ms, 33.5MB) +// 테스트 2 〉 통과 (0.03ms, 33.5MB) +// 테스트 3 〉 통과 (0.03ms, 33.5MB) +// 테스트 4 〉 통과 (0.03ms, 33.4MB) +// 테스트 5 〉 통과 (0.03ms, 33.5MB) +// 테스트 6 〉 통과 (0.03ms, 33.4MB) +// 테스트 7 〉 통과 (0.03ms, 33.5MB) +// 테스트 8 〉 통과 (0.03ms, 33.5MB) +// 테스트 9 〉 통과 (0.03ms, 33.6MB) +// 테스트 10 〉 통과 (0.03ms, 33.5MB) +// 테스트 11 〉 통과 (0.03ms, 33.5MB) +// 테스트 12 〉 통과 (0.03ms, 33.4MB) +// 테스트 13 〉 통과 (0.03ms, 33.5MB) +// 테스트 14 〉 통과 (0.03ms, 33.4MB) +// 테스트 15 〉 통과 (0.05ms, 33.4MB) +// 테스트 16 〉 통과 (0.03ms, 33.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/4.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/4.js" new file mode 100644 index 00000000..d2d20821 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/4.js" @@ -0,0 +1,55 @@ +// 수박수박수박수박수박수? + + +// 요상한 풀이 (수박을 n 번 만큼 repeat 하고 , slice(0,n) 으로 자르기) +function solution(n) { + var answer = "수박"; + return n % 2 === 0 ? answer.repeat(n).slice(0, n) : answer.repeat(n).slice(0, n) +} + + +// 테스트 1 〉 통과 (0.04ms, 33.5MB) +// 테스트 2 〉 통과 (0.04ms, 33.5MB) +// 테스트 3 〉 통과 (0.04ms, 33.6MB) +// 테스트 4 〉 통과 (0.05ms, 33.5MB) +// 테스트 5 〉 통과 (0.04ms, 33.5MB) +// 테스트 6 〉 통과 (0.03ms, 33.6MB) +// 테스트 7 〉 통과 (0.03ms, 33.5MB) +// 테스트 8 〉 통과 (0.03ms, 33.4MB) +// 테스트 9 〉 통과 (0.03ms, 33.5MB) +// 테스트 10 〉 통과 (0.03ms, 33.6MB) +// 테스트 11 〉 통과 (0.04ms, 33.5MB) +// 테스트 12 〉 통과 (0.03ms, 33.5MB) +// 테스트 13 〉 통과 (0.03ms, 33.5MB) +// 테스트 14 〉 통과 (0.03ms, 33.5MB) +// 테스트 15 〉 통과 (0.06ms, 33.7MB) +// 테스트 16 〉 통과 (0.03ms, 33.5MB) + + + + +function solution(n) { + let a = ['수', '박']; + + for (let i = 0; a.length < n; i++) { + i % 2 === 0 ? a.push('수') : a.push('박') + } + return n === 0 ? a = '' : a.join('') +} + +// 테스트 1 〉 통과 (0.19ms, 33.7MB) +// 테스트 2 〉 통과 (0.39ms, 33.3MB) +// 테스트 3 〉 통과 (0.31ms, 33.7MB) +// 테스트 4 〉 통과 (0.50ms, 33.2MB) +// 테스트 5 〉 통과 (0.29ms, 33.7MB) +// 테스트 6 〉 실패 (0.04ms, 33.5MB) +// 테스트 7 〉 통과 (0.04ms, 32.9MB) +// 테스트 8 〉 통과 (0.11ms, 32.9MB) +// 테스트 9 〉 통과 (0.12ms, 33.7MB) +// 테스트 10 〉 통과 (0.04ms, 33.5MB) +// 테스트 11 〉 통과 (0.12ms, 33.6MB) +// 테스트 12 〉 통과 (0.11ms, 33.5MB) +// 테스트 13 〉 통과 (0.14ms, 33.5MB) +// 테스트 14 〉 통과 (0.11ms, 33.5MB) +// 테스트 15 〉 통과 (0.85ms, 33.9MB) +// 테스트 16 〉 통과 (0.05ms, 33.5MB) diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/5.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/5.js" new file mode 100644 index 00000000..6edd664c --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/5.js" @@ -0,0 +1,20 @@ +// 내적 + +function solution(a, b) { + var answer = 0 + for (let i = 0; i < a.length; i++) { + answer += a[i] * b[i] + } + return answer; +} + + +// 테스트 1 〉 통과 (0.08ms, 33.4MB) +// 테스트 2 〉 통과 (0.05ms, 33.5MB) +// 테스트 3 〉 통과 (0.04ms, 33.5MB) +// 테스트 4 〉 통과 (0.04ms, 33.5MB) +// 테스트 5 〉 통과 (0.04ms, 33.5MB) +// 테스트 6 〉 통과 (0.07ms, 33.5MB) +// 테스트 7 〉 통과 (0.07ms, 33.5MB) +// 테스트 8 〉 통과 (0.08ms, 33.5MB) +// 테스트 9 〉 통과 (0.08ms, 33.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week04/6.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/6.js" new file mode 100644 index 00000000..dcd11b6f --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week04/6.js" @@ -0,0 +1,26 @@ +//문자열 내림차순으로 배치하기 + + +// 1. s 를 조각내서 배열로 만들고 +// 2. 요소들을 정렬할건데 역순으로 해야함 (a < b) (A < a) +// 3. 합치고 리턴 +function solution(s) { + return s.split('').sort().reverse().join(''); +} + +// 테스트 1 〉 통과 (0.05ms, 33.4MB) +// 테스트 2 〉 통과 (0.04ms, 33.5MB) +// 테스트 3 〉 통과 (0.04ms, 33.5MB) +// 테스트 4 〉 통과 (0.04ms, 33.6MB) +// 테스트 5 〉 통과 (0.15ms, 33.5MB) +// 테스트 6 〉 통과 (0.10ms, 33.6MB) +// 테스트 7 〉 통과 (0.04ms, 33.4MB) +// 테스트 8 〉 통과 (0.06ms, 33.4MB) +// 테스트 9 〉 통과 (0.06ms, 33.5MB) +// 테스트 10 〉 통과 (0.06ms, 33.6MB) +// 테스트 11 〉 통과 (0.04ms, 33.5MB) +// 테스트 12 〉 통과 (0.05ms, 33.4MB) +// 테스트 13 〉 통과 (0.05ms, 33.4MB) +// 테스트 14 〉 통과 (0.03ms, 33.4MB) +// 테스트 15 〉 통과 (0.03ms, 33.5MB) +// 테스트 16 〉 통과 (0.03ms, 33.4MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/1.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/1.js" new file mode 100644 index 00000000..7f99efbd --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/1.js" @@ -0,0 +1,46 @@ +// /문자열 다루기 기본 + + +function solution(s) { + // let a = s.split('') + // return a.map((el) => isNaN(Number(el))).includes(true) ? false : true + + for (let i = 0; i < s.length; i++) { + if (isNaN(Number(s[i]))) return false; + } + + if (s.length !== 4 && s.length !== 6) return false; + + return true +} + + // 테스트 1 〉 통과 (0.04ms, 33.5MB) + // 테스트 2 〉 통과 (0.05ms, 33.5MB) + // 테스트 3 〉 통과 (0.04ms, 33.4MB) + // 테스트 4 〉 통과 (0.04ms, 33.5MB) + // 테스트 5 〉 통과 (0.05ms, 33.6MB) + // 테스트 6 〉 통과 (0.07ms, 33.4MB) + // 테스트 7 〉 통과 (0.04ms, 33.5MB) + // 테스트 8 〉 통과 (0.05ms, 33.4MB) + // 테스트 9 〉 통과 (0.04ms, 33.4MB) + // 테스트 10 〉 통과 (0.04ms, 33.6MB) + // 테스트 11 〉 통과 (0.04ms, 33.4MB) + // 테스트 12 〉 통과 (0.04ms, 33.6MB) + // 테스트 13 〉 통과 (0.04ms, 33.4MB) + // 테스트 14 〉 통과 (0.04ms, 33.4MB) + // 테스트 15 〉 통과 (0.04ms, 33.4MB) + // 테스트 16 〉 통과 (0.04ms, 33.4MB) + // 테스트 17 〉 통과 (0.04ms, 33.4MB) + // 테스트 18 〉 통과 (0.04ms, 33.5MB) + // 테스트 19 〉 통과 (0.04ms, 33.4MB) + // 테스트 20 〉 통과 (0.04ms, 33.5MB) + // 테스트 21 〉 통과 (0.04ms, 33.4MB) + // 테스트 22 〉 통과 (0.04ms, 33.5MB) + // 테스트 23 〉 통과 (0.03ms, 33.5MB) + // 테스트 24 〉 통과 (0.04ms, 33.4MB) + // 테스트 25 〉 통과 (0.04ms, 33.5MB) + // 테스트 26 〉 통과 (0.03ms, 33.4MB) + // 테스트 27 〉 통과 (0.07ms, 33.4MB) + // 테스트 28 〉 통과 (0.06ms, 33.4MB) + // 테스트 29 〉 통과 (0.04ms, 33.5MB) + // 테스트 30 〉 통과 (0.05ms, 33.6MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/2.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/2.js" new file mode 100644 index 00000000..fef78c54 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/2.js" @@ -0,0 +1,35 @@ +// 약수의 개수와 덧셈 + + +function solution(left, right) { + let answer = 0 + for (let i = left; i <= right; i++) { + let count = [] + let idx = 1 + while (idx <= i) { + if (i % idx === 0) { + count.push(idx) + idx += 1 + } + if (i % idx !== 0) { + idx += 1 + } + if (idx === i) { + if ((count.length + 1) % 2 === 0) { + answer += i + } else if ((count.length + 1) % 2 !== 0) { + answer -= i + } + } + } + } + return answer +} + +// 테스트 1 〉 실패 (11.69ms, 36.8MB) +// 테스트 2 〉 통과 (3.31ms, 36.6MB) +// 테스트 3 〉 통과 (3.34ms, 36.7MB) +// 테스트 4 〉 통과 (2.60ms, 36.6MB) +// 테스트 5 〉 통과 (5.91ms, 36.9MB) +// 테스트 6 〉 통과 (2.79ms, 36.6MB) +// 테스트 7 〉 통과 (0.40ms, 33.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/3.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/3.js" new file mode 100644 index 00000000..745698ae --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/3.js" @@ -0,0 +1,33 @@ +// 부족한 금액 계산하기 + +function solution(price, money, count) { + var answer = 0; + for (let i = 1; i <= count; i++) { + answer += price * i + } + return answer < money ? 0 : answer - money +} + +// 테스트 1 〉 통과 (0.04ms, 33.4MB) +// 테스트 2 〉 통과 (0.03ms, 33.4MB) +// 테스트 3 〉 통과 (0.04ms, 33.5MB) +// 테스트 4 〉 통과 (0.04ms, 33.4MB) +// 테스트 5 〉 통과 (0.04ms, 33.5MB) +// 테스트 6 〉 통과 (0.04ms, 33.4MB) +// 테스트 7 〉 통과 (0.07ms, 33.5MB) +// 테스트 8 〉 통과 (0.04ms, 33.4MB) +// 테스트 9 〉 통과 (0.04ms, 33.4MB) +// 테스트 10 〉 통과 (0.04ms, 33.5MB) +// 테스트 11 〉 통과 (0.04ms, 33.4MB) +// 테스트 12 〉 통과 (0.07ms, 33.4MB) +// 테스트 13 〉 통과 (0.05ms, 33.5MB) +// 테스트 14 〉 통과 (0.06ms, 33.5MB) +// 테스트 15 〉 통과 (0.09ms, 33.4MB) +// 테스트 16 〉 통과 (0.05ms, 33.4MB) +// 테스트 17 〉 통과 (0.05ms, 33.5MB) +// 테스트 18 〉 통과 (0.13ms, 33.5MB) +// 테스트 19 〉 통과 (0.15ms, 33.5MB) +// 테스트 20 〉 통과 (0.10ms, 33.5MB) +// 테스트 21 〉 통과 (0.14ms, 33.4MB) +// 테스트 22 〉 통과 (0.09ms, 33.4MB) +// 테스트 23 〉 통과 (0.06ms, 33.4MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/4.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/4.js" new file mode 100644 index 00000000..c1b85964 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/4.js" @@ -0,0 +1,32 @@ +// 행렬의 덧셈 + +function solution(arr1, arr2) { + let answer = []; + for (let i = 0; i < arr1.length; i++) { + let arr = [] + for (let j = 0; j < arr1[i].length; j++) { + arr.push(arr1[i][j] + arr2[i][j]); + } + answer.push(arr) + } + return answer; +} + + +// 테스트 1 〉 통과 (0.13ms, 33.5MB) +// 테스트 2 〉 통과 (0.17ms, 33.6MB) +// 테스트 3 〉 통과 (0.30ms, 33.8MB) +// 테스트 4 〉 통과 (0.21ms, 33.6MB) +// 테스트 5 〉 통과 (0.15ms, 33.5MB) +// 테스트 6 〉 통과 (0.20ms, 33.5MB) +// 테스트 7 〉 통과 (0.12ms, 33.4MB) +// 테스트 8 〉 통과 (0.18ms, 33.5MB) +// 테스트 9 〉 통과 (0.91ms, 38.5MB) +// 테스트 10 〉 통과 (0.63ms, 38MB) +// 테스트 11 〉 통과 (0.45ms, 37.7MB) +// 테스트 12 〉 통과 (0.55ms, 37.8MB) +// 테스트 13 〉 통과 (0.43ms, 37.7MB) +// 테스트 14 〉 통과 (0.57ms, 38MB) +// 테스트 15 〉 통과 (0.58ms, 38MB) +// 테스트 16 〉 통과 (0.53ms, 38MB) +// 테스트 17 〉 통과 (8.01ms, 67.5MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/5.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/5.js" new file mode 100644 index 00000000..d54dbed8 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/5.js" @@ -0,0 +1,27 @@ +// 직사각형 별찍기 + +process.stdin.setEncoding('utf8'); +process.stdin.on('data', data => { + const n = data.split(" "); + const a = Number(n[0]), b = Number(n[1]); + for (let i = 1; i <= b; i++) { + let star = '' + for (let k = 1; k <= a; k++) { + star = star + '*' + } + console.log(star) + } + +}); + +// 테스트 1 〉 통과 (42.04ms, 32MB) +// 테스트 2 〉 통과 (42.15ms, 32.1MB) +// 테스트 3 〉 통과 (44.19ms, 32.1MB) +// 테스트 4 〉 통과 (62.47ms, 32.1MB) +// 테스트 5 〉 통과 (43.29ms, 32MB) +// 테스트 6 〉 통과 (47.89ms, 32MB) +// 테스트 7 〉 통과 (62.96ms, 32MB) +// 테스트 8 〉 통과 (54.95ms, 33MB) +// 테스트 9 〉 통과 (52.84ms, 36.9MB) +// 테스트 10 〉 통과 (53.91ms, 32.4MB) +// 테스트 11 〉 통과 (57.97ms, 36.6MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Junil/Week05/6.js" "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/6.js" new file mode 100644 index 00000000..37249d6f --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Junil/Week05/6.js" @@ -0,0 +1,29 @@ +// 최대공약수와 최소공배수 + +function solution(n, m) { + var answer = []; + for (let i = 1; i <= n; i++) { + if (n % i === 0 && m % i === 0) { + answer[0] = (i) + } + } + answer[1] = answer[0] * (n / answer[0]) * (m / answer[0]) + return answer; +} + +// 테스트 1 〉 통과 (0.04ms, 33.4MB) +// 테스트 2 〉 통과 (0.11ms, 33.4MB) +// 테스트 3 〉 통과 (0.11ms, 33.6MB) +// 테스트 4 〉 통과 (0.11ms, 33.6MB) +// 테스트 5 〉 통과 (0.04ms, 33.5MB) +// 테스트 6 〉 통과 (0.06ms, 33.5MB) +// 테스트 7 〉 통과 (0.06ms, 33.4MB) +// 테스트 8 〉 통과 (0.04ms, 33.4MB) +// 테스트 9 〉 통과 (0.12ms, 33.6MB) +// 테스트 10 〉 통과 (0.04ms, 33.5MB) +// 테스트 11 〉 통과 (0.13ms, 33.4MB) +// 테스트 12 〉 통과 (0.15ms, 33.5MB) +// 테스트 13 〉 통과 (0.13ms, 33.4MB) +// 테스트 14 〉 통과 (0.15ms, 33.5MB) +// 테스트 15 〉 통과 (0.13ms, 33.4MB) +// 테스트 16 〉 통과 (0.18ms, 33.6MB) \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\352\260\200\354\232\264\353\215\260\352\270\200\354\236\220\352\260\200\354\240\270\354\230\244\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\352\260\200\354\232\264\353\215\260\352\270\200\354\236\220\352\260\200\354\240\270\354\230\244\352\270\260.js" new file mode 100644 index 00000000..3c69d87d --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\352\260\200\354\232\264\353\215\260\352\270\200\354\236\220\352\260\200\354\240\270\354\230\244\352\270\260.js" @@ -0,0 +1,7 @@ +function solution(s) { + if(s.length % 2 === 0) { + return s[s.length / 2 - 1] + s[s.length / 2] + } else { + return s[parseInt(s.length / 2)] + } +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\202\264\354\240\201.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\202\264\354\240\201.js" new file mode 100644 index 00000000..2599867a --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\202\264\354\240\201.js" @@ -0,0 +1,7 @@ +function solution(a, b) { + let answer = 0; + for(let i = 0; i < a.length; i++) { + answer = answer + a[i] * b[i] + } + return answer; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\254\270\354\236\220\354\227\264\353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234\353\260\260\354\271\230\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\254\270\354\236\220\354\227\264\353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234\353\260\260\354\271\230\355\225\230\352\270\260.js" new file mode 100644 index 00000000..e311675d --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\353\254\270\354\236\220\354\227\264\353\202\264\353\246\274\354\260\250\354\210\234\354\234\274\353\241\234\353\260\260\354\271\230\355\225\230\352\270\260.js" @@ -0,0 +1,4 @@ +function solution(s) { + let arr = s.split('') + return arr.sort().reverse().join('') +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225.js" new file mode 100644 index 00000000..6a8d77aa --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\210\230\353\260\225\354\210\230\353\260\225\354\210\230\353\260\225.js" @@ -0,0 +1,7 @@ +function solution(n) { + if (n % 2 === 0) { + return '수박'.repeat(n / 2); + } else { + return '수박'.repeat(Math.floor(n / 2)) + '수' + } +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\227\206\353\212\224\354\210\253\354\236\220\353\215\224\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\227\206\353\212\224\354\210\253\354\236\220\353\215\224\355\225\230\352\270\260.js" new file mode 100644 index 00000000..7a37ae12 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\227\206\353\212\224\354\210\253\354\236\220\353\215\224\355\225\230\352\270\260.js" @@ -0,0 +1,8 @@ +function solution(numbers) { + const zeroToNine = [0,1,2,3,4,5,6,7,8,9] + let filteredArr = zeroToNine.filter((el) => { + return !numbers.includes(el); + }) + + return filteredArr.reduce((acc, cur) => acc + cur, 0); +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\235\214\354\226\221\353\215\224\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\235\214\354\226\221\353\215\224\355\225\230\352\270\260.js" new file mode 100644 index 00000000..ab6e4201 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week4/\354\235\214\354\226\221\353\215\224\355\225\230\352\270\260.js" @@ -0,0 +1,10 @@ +function solution(absolutes, signs) { + + const pm = signs.map((el) => { + return (el === true ? 1 : -1) + }) + + return absolutes.reduce((acc, cur, idx) => { + return acc + cur * pm[idx] + }, 0); +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\254\270\354\236\220\354\227\264\353\213\244\353\243\250\352\270\260\352\270\260\353\263\270.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\254\270\354\236\220\354\227\264\353\213\244\353\243\250\352\270\260\352\270\260\353\263\270.js" new file mode 100644 index 00000000..b82ef862 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\254\270\354\236\220\354\227\264\353\213\244\353\243\250\352\270\260\352\270\260\353\263\270.js" @@ -0,0 +1,7 @@ +function solution(s) { + if(s.length === 4 || s.length === 6){ + return s.split("").every(c => !isNaN(c)) + } else { + return false; + } +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\266\200\354\241\261\355\225\234\352\270\210\354\225\241\352\263\204\354\202\260\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\266\200\354\241\261\355\225\234\352\270\210\354\225\241\352\263\204\354\202\260\355\225\230\352\270\260.js" new file mode 100644 index 00000000..93ace18c --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\353\266\200\354\241\261\355\225\234\352\270\210\354\225\241\352\263\204\354\202\260\355\225\230\352\270\260.js" @@ -0,0 +1,9 @@ +function solution(price, money, count) { + let totalPrice = 0; + + for(let i = 1;i <= count; i++){ + totalPrice += price * i; + } + + return money > totalPrice ? 0 : totalPrice-money +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\225\275\354\210\230\354\235\230\352\260\257\354\210\230\354\231\200\353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\225\275\354\210\230\354\235\230\352\260\257\354\210\230\354\231\200\353\215\247\354\205\210.js" new file mode 100644 index 00000000..9f9ae431 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\225\275\354\210\230\354\235\230\352\260\257\354\210\230\354\231\200\353\215\247\354\205\210.js" @@ -0,0 +1,22 @@ +function solution(left, right) { + let divisorArr = []; + let resultArr = []; + for(let j = left; j <= right; j++){ + for(let i = 1; i <= Math.sqrt(j); i++){ + if(j % i === 0) { + divisorArr.push(i); + divisorArr.push(j / i); + } + } + let divisorSet = new Set(divisorArr) + divisorArr = []; + if(divisorSet.size % 2 === 0){ + resultArr.push(j) + }else{ + resultArr.push(-j) + } + divisorSet.clear() + } + console.log(resultArr) + return resultArr.reduce((acc, cur) => acc + cur, 0); +} diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\247\201\354\202\254\352\260\201\355\230\225\353\263\204\354\260\215\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\247\201\354\202\254\352\260\201\355\230\225\353\263\204\354\260\215\352\270\260.js" new file mode 100644 index 00000000..758140ea --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\247\201\354\202\254\352\260\201\355\230\225\353\263\204\354\260\215\352\270\260.js" @@ -0,0 +1,12 @@ +process.stdin.setEncoding('utf8'); +process.stdin.on('data', data => { + const n = data.split(" "); + const garo = Number(n[0]), saero = Number(n[1]); + for(let i = 0; i < saero; i++){ + let star = ''; + for(let j = 0; j < garo; j++){ + star = star + '*'; + } + console.log(star); + } +}); \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200\354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200\354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" new file mode 100644 index 00000000..172d450d --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200\354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" @@ -0,0 +1,12 @@ +function solution(n, m) { + return [gcd(n, m), lcm(n, m)]; +} + +function lcm(n, m) { + return (n * m) / gcd(n, m); +} + +function gcd(n, m){ + if(m === 0) return n; + return n > m ? gcd(m, n % m) : gcd(n, m % n); +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\355\226\211\353\240\254\354\235\230\353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\355\226\211\353\240\254\354\235\230\353\215\247\354\205\210.js" new file mode 100644 index 00000000..3c8d68b3 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Kyusik/week5/\355\226\211\353\240\254\354\235\230\353\215\247\354\205\210.js" @@ -0,0 +1,11 @@ +function solution(arr1, arr2) { + let answer = []; + for(let i = 0; i < arr1.length; i++){ + let first = []; + for(let j = 0; j < arr1[i].length; j++){ + first.push(arr1[i][j] + arr2[i][j]); + } + answer.push(first); + } + return answer; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/1.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/1.js" new file mode 100644 index 00000000..0291132b --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/1.js" @@ -0,0 +1,8 @@ +function solution(absolutes, signs) { + let result = 0; + for(let i = 0; i < absolutes.length; i++){ + if(signs[i] === false){ + absolutes[i] = absolutes[i] * -1; + }result += absolutes[i] + }return result +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/2.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/2.js" new file mode 100644 index 00000000..ea1a4b52 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/2.js" @@ -0,0 +1,9 @@ +function solution(numbers) { + let result = 0; + + for(let j = 0; j < 10; j++){ + if(!numbers.includes(j)){ + result = result + j + } + }return result +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/3.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/3.js" new file mode 100644 index 00000000..957c357b --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/3.js" @@ -0,0 +1,7 @@ +function solution(s) { + let answer = s.length; + + if(answer % 2 === 0){ + return s[(answer/2) - 1] + s[answer/2] + } return s[((answer + 1) / 2) - 1] +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/4.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/4.js" new file mode 100644 index 00000000..45679b36 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/4.js" @@ -0,0 +1,4 @@ +function solution(n) { + let answer = '수박'.repeat(n/2) + return n % 2 === 0 ? answer : answer + '수'; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/5.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/5.js" new file mode 100644 index 00000000..055469c1 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/5.js" @@ -0,0 +1,4 @@ +function solution(a, b) { + + return a.reduce((acc, cur, idx) => acc += a[idx] * b[idx], 0) +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/6.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/6.js" new file mode 100644 index 00000000..8275d701 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week04/6.js" @@ -0,0 +1,3 @@ +function solution(s) { + return s.split("").sort().reverse().join(""); +} diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/1.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/1.js" new file mode 100644 index 00000000..5f6fed9b --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/1.js" @@ -0,0 +1,8 @@ +function solution(s) { + if (s.length !== 4 && s.length !== 6) + return false; + for (let i = 0; i < s.length; i++) { + if (isNaN(Number(s[i]))) return false; + } + return true; + } \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/2.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/2.js" new file mode 100644 index 00000000..2e34740f --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/2.js" @@ -0,0 +1,7 @@ +function solution(left, right) { + let answer = 0; + + for(let i = left; i <= right; i++){ + Math.sqrt(i) % 1 === 0 ? answer += i : answer -= i; + } return -answer +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/3.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/3.js" new file mode 100644 index 00000000..44698723 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/3.js" @@ -0,0 +1,8 @@ +function solution(price, money, count) { + let total = 0; + + for(let i = 0; i <= count; i++){ + total += price * i + } + return total > money ? total - money : 0; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/4.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/4.js" new file mode 100644 index 00000000..b3d708e3 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/4.js" @@ -0,0 +1,10 @@ +function solution(arr1, arr2) { + let answer = []; + for(let i = 0; i < arr1.length; i++){ + answer[i] = []; + for(let j = 0; j < arr1[i].length; j++){ + answer[i].push(arr1[i][j] + arr2[i][j]) + } + } + return answer; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/5.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/5.js" new file mode 100644 index 00000000..f8d779bb --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/5.js" @@ -0,0 +1,9 @@ +process.stdin.setEncoding('utf8'); +process.stdin.on('data', data => { + const n = data.split(" "); + const a = Number(n[0]), b = Number(n[1]); + // console.log(a); + // console.log(b); + const answer = ('*'.repeat(a)+`\n`).repeat(b) + console.log(answer) +}); \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/6.js" "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/6.js" new file mode 100644 index 00000000..147a7241 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/MyungHwan/Week05/6.js" @@ -0,0 +1,10 @@ +function solution(n, m) { + let answer = []; + + const gcd = (n, m) => { + if( m === 0) return n + return gcd(m, n % m) + } + const lcm = (n, m) => n * m / gcd(n,m) + return [gcd(n,m), lcm(n,m)] +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" new file mode 100644 index 00000000..2b5b2bb5 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\352\260\200\354\232\264\353\215\260 \352\270\200\354\236\220 \352\260\200\354\240\270\354\230\244\352\270\260.js" @@ -0,0 +1,6 @@ +function solution(s) { + let harf = parseInt(s.length/2); + + return s.length%2===0 ? s[harf-1]+s[harf] : s[harf] + +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\353\202\264\354\240\201.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\353\202\264\354\240\201.js" new file mode 100644 index 00000000..6bfcf959 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week04/\353\202\264\354\240\201.js" @@ -0,0 +1,8 @@ +function solution(a, b) { + var answer = 0; + + for(let i = 0; i !isNaN(el)) + } else { + return false; + } +} + \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" new file mode 100644 index 00000000..9d7f405c --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\353\266\200\354\241\261\355\225\234 \352\270\210\354\225\241 \352\263\204\354\202\260\355\225\230\352\270\260.js" @@ -0,0 +1,10 @@ +function solution(price, money, count) { + var answer = 0; + + for(let i=1;i<=count;i++){ + answer += price * i; + } + + return money > answer ? 0 : answer-money + +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" new file mode 100644 index 00000000..03a2029f --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\225\275\354\210\230\354\235\230 \352\260\234\354\210\230\354\231\200 \353\215\247\354\205\210.js" @@ -0,0 +1,11 @@ +function solution(left, right) { + var answer = 0; + for(let i = left; i <= right; i++){ + if (Number.isInteger(Math.sqrt(i))){ + answer = answer - i + } else{ + answer = answer + i + } + } + return answer; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204 \354\260\215\352\270\260.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204 \354\260\215\352\270\260.js" new file mode 100644 index 00000000..73af6bc5 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\247\201\354\202\254\352\260\201\355\230\225 \353\263\204 \354\260\215\352\270\260.js" @@ -0,0 +1,18 @@ +process.stdin.setEncoding("utf8"); +process.stdin.on("data", (data) => { + const n = data.split(" "); + const a = Number(n[0]), + b = Number(n[1]); + + for (let i = 0; i < b; i++) { + let stars = ""; + + for (let j = 0; j < a; j++) { + // stars = stars + "*" + stars += "*"; + } + + console.log(stars); + + } +}); \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" new file mode 100644 index 00000000..f5813189 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\354\265\234\353\214\200\352\263\265\354\225\275\354\210\230\354\231\200 \354\265\234\354\206\214\352\263\265\353\260\260\354\210\230.js" @@ -0,0 +1,13 @@ +function solution(n, m) { + var answer = []; + + const gcf = (a,b) => { + if ( b === 0) { + return a + } + return gcf(b, a % b) + } + const lcm = (a,b) => (a*b) / gcf(a,b) + + return [gcf(n,m), lcm(n,m)]; +} \ No newline at end of file diff --git "a/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" new file mode 100644 index 00000000..3026ca82 --- /dev/null +++ "b/\354\210\230\354\232\224\354\235\274/Seungmin/Week05/\355\226\211\353\240\254\354\235\230 \353\215\247\354\205\210.js" @@ -0,0 +1,10 @@ +function solution(arr1, arr2) { + var answer = [[]]; + for (var i=0; i