๐ท๐ผ๋ชจ์ฌ๋ด์ ๊ฐ๋ฐ์์ฒ๐ท๐ผ
[JAVA/์ฝ๋ฉํ ์คํธ] ์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์ ๋ณธ๋ฌธ
[JAVA/์ฝ๋ฉํ ์คํธ] ์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์
์์ผ์ด 2023. 3. 2. 19:25๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/131701
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
import java.util.*;
class Solution {
public int solution(int[] elements) {
int answer = 0;
HashSet<Integer> set = new HashSet<Integer>();
for(int i=1; i<=elements.length; i++){
int sum = 0;
int index = 0;
int k = 0;
for(int j=0; j< elements.length+i; j++){
int m = k % elements.length;
if(k == (elements.length-1)+i){
break;
}
if(j>=i){
sum += elements[m];
sum = sum-elements[index];
index++;
}else{
sum += elements[m];
}
set.add(sum);
k++;
}
}
answer = set.size();
return answer;
}
}
์ฒ์์๋ ArrayList<Integer>๋ฅผ ์ ์ธํด์ contains ํจ์๋ฅผ ์จ์ ๋ฆฌ์คํธ์ ์๋ ์ซ์๋ฅผ ์ฐพ๊ณ ์ ํ์์ง๋ง
๊ณ์ ์๊ฐ์ด๊ณผ๊ฐ ๋ ์
HashSet์ ์ด์ฉํ์๋๋ ์๊ฐ์ด๊ณผ๊ฐ ๋์ง ์์๋ค.
ArrayList๋ contains ๋ฉ์๋ ์คํ ์ ์ฒ์ ์์ฐจ์ ์ผ๋ก ๋ฐ์ดํฐ ํ์์ ์งํํ๋ฉด์ ๊ฐ์ ์ฐพ๊ธฐ ๋๋ฌธ์ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ฆฐ๋ค.
HashSet์ ๋น์ ํ ๊ตฌ์กฐ๋ก ์์๊ฐ ์๊ณ ์ธ๋ฑ์ค๋ ์กด์ฌํ์ง ์๋๋ค. ๋ํ, ์ค๋ณต์ ์๋์ผ๋ก ์ ๊ฑฐํด์ค๋ค. ๋ฐ์ดํฐ๋ฅผ ์๋์ง ํ์ธํ ๋๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ฐพ์๋ณด๋ ๊ฒ์ด ์๋๋ผ ๋ฐ์ดํฐ๋ฅผ key๋ก ์์์ ์๊ด์์ด ๋ฐ๋ก ํ์ธํ๋ค. ๋ฐ๋ผ์ List๋ณด๋ค ์๋๊ฐ ํจ์ฌ ๋น ๋ฅด๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
'๊ฐ๋ฐ > ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JAVA/์ฝ๋ฉํ ์คํธ] ์ ์ ์ผ๊ฐํ (0) | 2023.03.08 |
---|---|
[JAVA/์ฝ๋ฉํ ์คํธ] ๋ฉ๋ฆฌ ๋ฐ๊ธฐ (0) | 2023.03.02 |
[JAVA/์ฝ๋ฉํ ์คํธ] ํํ (0) | 2023.02.28 |
[JAVA/์ฝ๋ฉํ ์คํธ] ๊ทค ๊ณ ๋ฅด๊ธฐ (0) | 2023.02.28 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] ์ ํ์ ์๊ฐ ์ด๋ (0) | 2023.02.24 |