μΌμ΄μ¬ - Java [μ½λ©ν μ€νΈ μ°μ΅]
β€οΈ Problem
- λ¬Έμ
νκ΅μ€νκ΅μ λ€λλ νμλ€μ κ°μ μ μ λ²νΈλ₯Ό κ°κ³ μμ΅λλ€. μ΄ νκ΅ νμ 3λͺ μ μ μ λ²νΈλ₯Ό λνμ λ 0μ΄ λλ©΄ 3λͺ μ νμμ μΌμ΄μ¬λΌκ³ ν©λλ€. μλ₯Ό λ€μ΄, 5λͺ μ νμμ΄ μκ³ , κ°κ°μ μ μ λ²νΈκ° μμλλ‘ -2, 3, 0, 2, -5μΌ λ, 첫 λ²μ§Έ, μΈ λ²μ§Έ, λ€ λ²μ§Έ νμμ μ μ λ²νΈλ₯Ό λνλ©΄ 0μ΄λ―λ‘ μΈ νμμ μΌμ΄μ¬μ λλ€. λν, λ λ²μ§Έ, λ€ λ²μ§Έ, λ€μ― λ²μ§Έ νμμ μ μ λ²νΈλ₯Ό λν΄λ 0μ΄λ―λ‘ μΈ νμλ μΌμ΄μ¬μ λλ€. λ°λΌμ μ΄ κ²½μ° νκ΅μ€νκ΅μμλ λ κ°μ§ λ°©λ²μΌλ‘ μΌμ΄μ¬λ₯Ό λ§λ€ μ μμ΅λλ€.
νκ΅μ€νκ΅ νμλ€μ λ²νΈλ₯Ό λνλ΄λ μ μ λ°°μ΄ numberκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, νμλ€ μ€ μΌμ΄μ¬λ₯Ό λ§λ€ μ μλ λ°©λ²μ μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±νμΈμ.
- μ ν μ¬ν
- 3 ≤ numberμ κΈΈμ΄ ≤ 13
- -1,000 ≤ numberμ κ° μμ ≤ 1,000
- μλ‘ λ€λ₯Έ νμμ μ μ λ²νΈκ° κ°μ μ μμ΅λλ€.
- μ μΆλ ₯ μ & μ€λͺ
no | number | result |
1 | [-2, 3, 0, 2, -5] | 2 |
2 | [-3, -2, -1, 0, 1, 2, 3] | 5 |
3 | [-1, 1, -1, 1] | 0 |
- λ¬Έμ μμμ κ°μ΅λλ€.
- νμλ€μ μ μ λ²νΈ μ (-3, 0, 3), (-2, 0, 2), (-1, 0, 1), (-2, -1, 3), (-3, 1, 2) μ΄ μΌμ΄μ¬κ° λ μ μμΌλ―λ‘, 5λ₯Ό return ν©λλ€.
- μΌμ΄μ¬κ° λ μ μλ λ°©λ²μ΄ μμ΅λλ€.
π Solution
νμ΄
class Solution {
public int solution(int[] number) {
int answer = 0;
for(int i=0; i<number.length-2; i++){
for(int j=i+1; j<number.length-1; j++){
for(int k=j+1; k<number.length; k++){
if(number[i]+number[j]+number[k]==0) {
answer++;
}
}
}
}
return answer;
}
}
μ²λ¦¬μλ VERY GOODπ
π Comment
μ΄ λ¬Έμ λ for λ°λ³΅λ¬Έ 3μ€μ²©μ μ¬μ©ν΄μ ν μ μμλ€.
첫 λ²μ§Έ forλ¬Έμ i=0;μΌλ‘ μμνκ³ i<number.length-2;κΉμ§μ λ²μλ₯Ό μ§μ νλ€. κ·Έ μ΄μ λ μΈλ±μ€ 0λ²λΆν° μμνλ λλ²μ§Έ forλ¬Έκ³Ό μΈλ²μ§Έ forλ¬ΈκΉμ§ μ΄μ΄μ§κΈ° μν λ²μλ₯Ό μ§μ νκΈ° μν΄μ μλ€. κ·Έλ¦¬κ³ μμμλΆν° μμ°¨μ μΌλ‘ λ²μλ₯Ό μ€μ ν΄μΌ μμκ° μμ΄μ§ μκΈ° λλ¬Έμ λλ²μ§Έ forλ¬Έμμλ j=i; j<number.length-1;λ‘ λ²μ£Όλ₯Ό μ€μ νμΌλ©° μΈλ²μ§Έ forλ¬Έλ λμΌν μ΄μ λ‘ k=j; k<number.length;λ₯Ό μ§μ νλ€. μμκ° μμ΄κ² λλ©΄ μ€λ³΅μ΄ λ°μν μ μκΈ° λλ¬Έμ΄λ€.
μ΄λ κ² λ²μλ₯Ό μ€μ ν λ€μμ number[i]+number[j]+number[k]μ κ°μ΄ 0μ΄ λλμ§λ₯Ό κ²μ¬ν΄μ ν΄λΉνλ κ²½μ°λ§ answer++;νλλ‘ κ΅¬ννλ€.