728x90
푼 답안
import java.util.*;
class Solution {
public static int solution(int[] nums) {
ArrayList<Integer> sumNum = new ArrayList<Integer>();
ArrayList<Integer> total = new ArrayList<Integer>();
int answer = 0;
int count = 0;
for(int i = 0; i < nums.length; i++){
for(int j = i+1; j < nums.length; j++){
for(int k = j+1; k < nums.length; k++){
sumNum.add(nums[i] + nums[j] + nums[k]);
}
}
}
for(int i = 0; i < sumNum.size(); i++){
count = 0;
for(int j = 1; j <= sumNum.get(i); j++ ){
if (sumNum.get(i) % j == 0){
count ++;
}
}
if(count == 2){
total.add(sumNum.get(i));
}
}
answer = total.size();
return answer;
}
}
vscode
import java.util.*;
class Solution {
public static void main(String[] arg) {
int[] nums = {1, 2, 3, 4};
System.out.println(solution(nums)); //출력시 필요
}
public static int solution(int[] nums) {
ArrayList<Integer> sumNum = new ArrayList<Integer>();
ArrayList<Integer> total = new ArrayList<Integer>();
//ArrayList = 가변배열 ArrayList와 HashSet은 integer사용
int answer = 0;
int count = 0;
for(int i = 0; i < nums.length; i++){
for(int j = i+1; j < nums.length; j++){
for(int k = j+1; k < nums.length; k++){
sumNum.add(nums[i] + nums[j] + nums[k]);
}
}
}
//숫자 합
for(int i = 0; i < sumNum.size(); i++){
count = 0;
for(int j = 1; j <= sumNum.get(i); j++ ){
if (sumNum.get(i) % j == 0){
count ++;
}
}
//약수
//나머지가 0이 되는 것이 약수
if(count == 2){
total.add(sumNum.get(i));
//소괄호
}
}
//소수
//약수가 2개 뿐이면 소수
answer = total.size();
return answer;
}
}
int (primitive type)
int는 변수의 타입(data type)
변수(variable)는 '값을 저장할 수 있는 메모리 상의 공간'
자료형은 'data의 type에 따라 값이 저장될 공간의 크기와 저장 형식을 정의한 것'
Integer (wrapper class)
기본형을 객체로 다루기 위해 사용하는 클래스인 래퍼 클래스(wrapper class)
Integer는 int의 레퍼클레스
다른답안
class Solution {
public int solution(int[] nums) {
int answer = 0;
int count = 0;
for(int i = 0; i < nums.length; i++){
for(int j = i+1; j < nums.length; j++){
for(int k = j+1; k <nums.length; k++){
int sum = nums[i] + nums[j] + nums[k];
for(int d = 1; d <= sum; d++){
if(sum % d == 0){
count += 1;
}
}
if(count == 2){
answer += 1;
}
count = 0;
}
}
}
return answer;
}
}
728x90