https://school.programmers.co.kr/learn/courses/30/lessons/12977
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
미리 구해 놓으면 편리하다.
기본적으로 에라토스테네스의 체를 구현했다고 생각하면 될듯
- Java
import java.util.*;
class Solution {
static boolean[] aa = new boolean[3001];
public int solution(int[] nums) {
int answer = 0;
Arrays.fill(aa,true);
aaa();
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 a = nums[i]+nums[j]+nums[k];
if(aa[a]) answer++;
}
return answer;
}
static void aaa(){
aa[0]=false;aa[1]=false;
for(int i=2;i<3001;i++)
if(aa[i]==true)
for(int j=i*2;j<3001;j+=i)
aa[j]=false;
}
}
- Ruby
def solution(n)
answer = 0
a=Array.new(3001,true)
a[0]=false;a[1]=false
for i in 2..3000
if a[i]==true
k=i*2
while k<3001
a[k]=false
k=k+i
end
end
end
for i in 0..(n.length-1)
for j in i+1..(n.length-1)
for k in j+1..(n.length-1)
b=n[i]+n[j]+n[k]
if a[b]==true
answer=answer+1
end
end
end
end
return answer
end
'Programmers > Java, Ruby' 카테고리의 다른 글
프로그래머스 Java : 다트 게임 (0) | 2022.11.29 |
---|---|
프로그래머스 Java : 실패율 (0) | 2022.11.27 |
프로그래머스 Java / Ruby : 소수 찾기 (0) | 2022.11.23 |
프로그래머스 Java / Ruby : 모의고사 (0) | 2022.11.22 |
프로그래머스 Java / Ruby : 2016년 (0) | 2022.11.21 |