BOGGLE 문제 오답관련 문의 bum4985 #include<stdio.h> int testcount; char arr[7][7]; int cache[105][105]; int cache2[105][105]; //int n; char word[20]; int main(void){ //freopen("c:\\input.txt", "r", stdin); scanf("%d", &testcount); gets(word); while (testcount--){ int c; //scanf("%d", &n); for (int i = 1; i < 6; i++){ for (int j = 1; j < 6; j++){ scanf("%c", &arr[i][j]); } gets(word); } scanf("%d", &c); while (c--){ char test[11]; int result = 1; gets(word); for (int i = 0; i < 7; i++){ for (int j = 0; j < 7; j++){ cache[i][j] = -1; cache2[i][j] = -1; } } scanf("%s", test); //printf("%s", arr); for (int o = 0; test[o] != '\0'; o++){ //printf("%c", arr[o]); int stt = 0; if (o % 2 == 0){ for (int i = 1; i < 6; i++){ for (int j = 1; j < 6; j++){ if (test[o] == arr[i][j]){ if (cache[i - 1][j - 1] == o - 1 || cache[i - 1][j] == o - 1 || cache[i - 1][j + 1] == o - 1 || cache[i][j - 1] == o - 1 || cache[i][j + 1] == o - 1 || cache[i + 1][j - 1] == o - 1 || cache[i + 1][j] == o - 1 || cache[i + 1][j + 1] == o - 1) { cache2[i][j] = o; stt = 1; } } } } } else{ for (int i = 1; i < 6; i++){ for (int j = 1; j < 6; j++){ if (test[o] == arr[i][j]){ if (cache2[i - 1][j - 1] == o - 1 || cache2[i - 1][j] == o - 1 || cache2[i - 1][j + 1] == o - 1 || cache2[i][j - 1] == o - 1 || cache2[i][j + 1] == o - 1 || cache2[i + 1][j - 1] == o - 1 || cache2[i + 1][j] == o - 1 || cache2[i + 1][j + 1] == o - 1) { cache[i][j] = o; stt = 1; } } } } } if (stt != 1){ result = 0; break; } } printf("%s ", test); if (result == 1) { printf("YES\n"); } else { printf("NO\n"); } } } } 안녕하세요. 제가 문의드릴 내용은 제가 만들수 있는 모든 TESTCASE는 다 통과하는데 오답이라고 나와서 문의드립니다. 원래 오답이라고 나오면 자신이 TESTCASE를 만들어서 해결해야하지만 도저히 모르겠습니다. 어떤 테스트 케이스에서 통과를 못했는지 던져주시면 해결하겠습니다. NNNNN NEEEN NEYEN NEEEN NSNNN 1 YES 위 테스트케이스도 통과합니다. 감사합니다. 9년 전
3개의 댓글이 있습니다. JongMan 출력 양식을 다시 읽어 주세요. 9년 전 link bum4985 JongMan 님 소스를 수정하여 다시 올렸습니다. 그럼에도 오답이 되네요. 답변 꼭 부탁드립니다. 어떤 테스트케이스가 통과하지 않을까요? 9년 전 link JongMan 문자 단위 입력을 받고 gets()로 라인 피드를 입력받는 방식은 추천하지 않습니다. 아마 한 케이스가 끝나고 gets(word)를 안 해서 나오는 오답 같은데, 그냥 scanf("%s")로 모든 문자열을 입력받으시길 추천드립니다. 9년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
bum4985
안녕하세요.
제가 문의드릴 내용은 제가 만들수 있는 모든 TESTCASE는 다 통과하는데 오답이라고 나와서 문의드립니다.
원래 오답이라고 나오면 자신이 TESTCASE를 만들어서 해결해야하지만 도저히 모르겠습니다. 어떤 테스트 케이스에서 통과를 못했는지 던져주시면 해결하겠습니다.
NNNNN
NEEEN
NEYEN
NEEEN
NSNNN
1
YES
위 테스트케이스도 통과합니다.
감사합니다.
9년 전