์ฒด๊ฐ Level : โ
โ
โ Review: ์์ ๊ท์น์ฑ ์ฐพ๊ธฐ, ์์์ผ๋ก ํ๋ฉด ์ ๋ง ๊ฐ๋จํ๊ฒ ํ ์ ์๋ ๋ฌธ์ ! |
๐ก ์ฐ์๋ ์ธ ๊ฐ์ ์ ์๋ฅผ ๋ํด 12๊ฐ ๋๋ ๊ฒฝ์ฐ๋ 3, 4, 5์ ๋๋ค. ๋ ์ ์ num๊ณผ total์ด ์ฃผ์ด์ง๋๋ค. ์ฐ์๋ ์ num๊ฐ๋ฅผ ๋ํ ๊ฐ์ด total์ด ๋ ๋, ์ ์ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ด์ return
https://school.programmers.co.kr/learn/courses/30/lessons/120923
์ซ์๊ฐ ์์๋๋ก ๋ํด์ ธ์ผํ๊ธฐ๋๋ฌธ์ ๋ฐ๋ณต๋ฌธ์ ์ฆ๊ฐ๊ฐ์ ์ ์กฐ์ ํ๋ฉด ๋๊ฒ ๊ตฌ๋ ์ถ์๋ค.!
๋ฐฐ์ด์๋ ์์ ๊ฐ๋ ๋ค์ด๊ฐ ์ ์๊ธฐ ๋๋ฌธ์
-1000 ~ 1000 ๋ฒ์๋ก ์ก์์ค๋ค.
count ๋ ์ฆ๊ฐ ์นด์ดํธ ์ญํ .
1) num ๋ฒ ๋ฐ๋ณตํ๊ฒ๋๋ฉด ๋ฉ์ถ๊ณ ๋น๊ต ์์.
2) ์ฌํ i ๊ฐ๋ค์ ๋ํ sum ์ด total ๊ณผ ๊ฐ์ผ๋ฉด
3) i ๊ฐ๋ค์ ํ๋ํ๋ ๋ฐฐ์ด์ ๋ฃ์ด์ค๋ค. (๋์ ๋ฐฐ์ด ์ฌ์ฉ)
4) total ๊ณผ ๊ฐ์ง ์์ ๊ฒฝ์ฐ์๋ ๋ค์ ๊ฐ๋ค์ ์ด๊ธฐํํด์ค์ผํ๋ค.
5) count ์ฆ๊ฐ ์นด์ดํธ ์ด๊ธฐํ / sum ๋ํ ๊ฐ ์ด๊ธฐํ / i ๊ฐ์ num -1 ๋งํผ ๋ค๋ก ๊ฐ์ ๋น๊ต
[์ฑ๊ณต]
import java.util.*;
class Solution {
public List<Integer> solution(int num, int total) {
List<Integer> answer = new ArrayList<>();
int sum = 0;
int count = 0;
for (int i = -1000; i <= 1000; i++){
count ++;
sum += i;
if (count == num){
if (sum == total){
for (int j = i-num+1; j <= i; j++){
answer.add(j);
}
}else{
count = 0;
sum = 0;
i -= num-1;
}
}
}
return answer;
}
}
[์ฐธ๊ณ ]
๊ท์น์ฑ์ ์ฐพ์ ์์์ผ๋ก ๋ง๋ค์ด ํผ ์ฝ๋์ด๋ค!
์ค๋ช ๋ ์ ๋์ด์๋ค!
Total = now total + (num x n)
(Total - now total) /num = n
https://fall-in-dream.tistory.com/28
[์คํจ] ์ ์ ๋ฒ์๋ฅผ ์๋ชป์ก์๋ค!
import java.util.*;
class Solution {
public List<Integer> solution(int num, int total) {
List<Integer> answer = new ArrayList<>();
int sum = 0;
int count = 0;
for (int i = 1; i <= 100; i++){
count ++;
sum += i;
if (count == num){
if (sum == total){
for (int j = i-num+1; j <= i; j++){
answer.add(j);
}
}else{
count = 0;
sum = 0;
i -= num-1;
}
}
}
return answer;
}
}