알고스팟을 이제 시작한 사용자입니다!
제출한 답안이 오답일 경우 원인은 따로 나오지 않더군요.. 문제를 푼 알고리즘
제가 푼 방식은 각 입력을 받으면서 총 문제에 대한 배열을 선언하여
푼 문제에 대해서는 1로 마킹하여 최종 결과는 마킹이 안된 문제가 있을 경우에는
NO를 출력하고 모든 문제에 대해서 마킹이 되어 있는 경우에는 YES를 출력하고 있습니다.
물론 문제에 주어진 조건에 맞지 않은 입력을 받았을 시에는 프로그램을 종료시키고 있습니다.
몇가지 예외처리를 하고 다시 답을 제출했는데 계속 오답이 나오더군요..
어떤 점이 잘못됬는지 찾아주시면 감사하겠습니다! 혹시 제가 질문이 처음이라 잘못된 부분이
있으면 수정하겠습니다!
#include <iostream>usingnamespacestd;intmain(intargc,constchar*argv[]){intcaseCount=0;intcount[2];intproNum;intproArr[500];intinput;boolresult=false;cin>>caseCount;for(inti=0;i<caseCount;i++){cin>>count[0];// 참가자 수if(count[0]<=0||count[0]>500){return0;}cin>>count[1];// 총 문제 수if(count[1]<=0||count[1]>500){return0;}else{// 모든 문제를 0으로 초기화for(inti=0;i<count[1];i++){proArr[i]=0;}}for(intj=0;j<count[0];j++){cin>>proNum;// 참가자가 풀 수 있다고 예상되는 문제 수// 예상되는 문제의 수가 총 문제의 수를 넘을 경우if(proNum>count[1]||proNum<0){return0;}// 문제를 한 문제도 못푼 참가자가 있을 경우if(proNum==0){result=false;break;}// 모든 문제를 푼 참가자가 있을 경우if(proNum==count[1]){result=false;break;}// 푼 문제에 대해서 1로 마킹for(intk=0;k<proNum;k++){cin>>input;proArr[input-1]=1;}}for(intq=0;q<count[1];q++){// 총 문제 개수에 대해 0이 존재할 경우 참가자들이 못 푼 문제가 존재하므로 좋은 문제가 아님if(proArr[q]==0){result=false;break;}else{result=true;}}// 결과 출력if(result){cout<<"YES"<<endl;}else{cout<<"NO"<<endl;}}return0;}
bsy8220
GOODSET
알고스팟을 이제 시작한 사용자입니다!
제출한 답안이 오답일 경우 원인은 따로 나오지 않더군요..
문제를 푼 알고리즘
몇가지 예외처리를 하고 다시 답을 제출했는데 계속 오답이 나오더군요..
어떤 점이 잘못됬는지 찾아주시면 감사하겠습니다! 혹시 제가 질문이 처음이라 잘못된 부분이
있으면 수정하겠습니다!
9년 전