mport java.util.Arrays; //테스트로 출력해 보기 위한 코드입니다.
public class BestSet {
public int[] bestSet(int n, int s){
int[] answer = null;
if(n>s) {
answer = new int[1];
answer[0]=-1;
return answer;
}
answer = new int[n];
int a = s/n;
for(int i=0;i<n;i++) {
answer[i]=a;
}
for(int i=0;i<s%n;i++) {
answer[n-1-i]++;
}
return answer;
}
public static void main(String[] args) {
BestSet c = new BestSet();
//아래는 테스트로 출력해 보기 위한 코드입니다.
System.out.println(Arrays.toString(c.bestSet(3,13)));
}
}
가장 쉽게 풀었죠. 30분도 안걸렸던거 같네요. 프로그램을 통해서 암호문의 유효성이 검증되는데요, 역공학을 통해서 암호문을 쉽게 찾을 수 있습니다. 답안 : Snow White and the Seven Dwarfs!. 풀이 : Oracle 함수가 CRC 를 계산하기 위해서는 중간에 평문이 복구될 것으로 보였다 . 제공하는 dll 을 이용하여 Oracle 함수의 입력으로 암호문을 넣은 프로그램을 작성하였다 . IDA 와 Immunity Debugger 를 이용해 프로그램을 역공학하여 얻을 수 있었다 .
댓글
댓글 쓰기