java소스 제출시 런타임 오류(RTE)가 발생합니다. choi4780 Picnic 문제에 대한 java소스 풀이인데요. 런타임오류(RTE)가 발생합니다. 어디서 잘못되었는지 확인할 방법이 없어서요. 답변부탁드리겠습니다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayDeque; import java.util.ArrayList; import java.util.List; import java.util.Queue; public class Main { static int T; static int areFriends[][]; static int taken[]; static int Answer; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); T= Integer.parseInt(br.readLine()); int N, m; for(int t = 0; t<T; t++){ String input = br.readLine(); //학생수 N = Integer.parseInt(input.split("\\s")[0]); //짝수 m = Integer.parseInt(input.split("\\s")[1]); areFriends= new int[10][10]; taken= new int[N]; String[] CoupleInput = br.readLine().split("\\s"); //짝 정보를 받아서 coupleList라는 배열에 넣음 Queue<Integer> coupleList = new ArrayDeque<Integer>(); for(String num : CoupleInput){ coupleList.add(Integer.parseInt(num)); } //coupleList 큐에서 하나씩 빼서 친구여부 2차배열에 1(친구여부이면)을 삽입 for(int i=0; i<m; i++){ int x=coupleList.poll(); int y = coupleList.poll(); areFriends[x][y]=1; areFriends[y][x]=1; } Answer = findPair(taken); System.out.println(Answer); } } private static int findPair(int[] taken) { int ret=0; int firstFree=-1; for(int i=0; i<taken.length; i++){ //아직 짝이 안지어진 사람이 있다면 firstFree를 그 사람 번호로 지정 if(taken[i]==0){ firstFree=i; break; } } if(firstFree==-1) return 1; for(int i=firstFree+1; i<taken.length; i++){ if(taken[firstFree]==0 && taken[i]==0 && areFriends[firstFree][i]==1){ taken[firstFree]=taken[i]=1; ret+=findPair(taken); taken[firstFree]=taken[i]=0; } } return ret; } } 9년 전
0개의 댓글이 있습니다. 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
choi4780
Picnic 문제에 대한 java소스 풀이인데요.
런타임오류(RTE)가 발생합니다.
어디서 잘못되었는지 확인할 방법이 없어서요. 답변부탁드리겠습니다.
9년 전