ZEROONE 문제를 계속 풀고 있습니다. 그런데 어디에서 오답이 발생하는지를 끝내 모르겠습니다. 예제로 나온 인풋에 대한 아웃풋은 나오는데 어떤 부분이 문제일까요? 고수님의 혜안 부탁드립니다..
#include <iostream>#include <stdio.h>usingnamespacestd;chararN[10000000];// 처음 "0000011111" 숫자가 들어갈 배열boolarR[1000000];// YES, NO 결과 저장 (true면 YES)intmain(void){intS,N;scanf("%s",arN);scanf("%d",&N);for(inti=0;i<N;i++){intmin_i,max_i,tmp;scanf("%d%d",&min_i,&max_i);if(min_i==max_i){arR[i]=true;continue;}tmp=min_i;min_i=min(min_i,max_i);max_i=max(tmp,max_i);boolbOne=false,bZero=false;for(intj=min_i;j<=max_i;j++){(arN[j]=='1')?(bOne=true):(bZero=true);if(bOne==true&&bZero==true)break;// 1과 0이 둘 다 있다면 무조건 최대값과 최소값이 다른 경우이므로 루프를 나옴}if(bOne!=bZero)arR[i]=true;// 1이 있고 0이 없거나, 1이 없고 0이 있는 경우는 같은 숫자만 있는 경우이므로 YES (나머지는 모두 NO)}for(inti=0;i<N;i++){if(arR[i]==true)printf("YES\n");elseprintf("NO\n");}return0;}
babo
ZEROONE 문제를 계속 풀고 있습니다. 그런데 어디에서 오답이 발생하는지를 끝내 모르겠습니다. 예제로 나온 인풋에 대한 아웃풋은 나오는데 어떤 부분이 문제일까요? 고수님의 혜안 부탁드립니다..
읽어주셔서 감사합니다.
8년 전