More actions
imported>rabierre No edit summary |
imported>rabierre No edit summary |
||
| (4 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
* 왜 Accept가 안되나 했더니 검사하는 부분에서 count-1이어서...... | |||
#include <memory.h> | |||
#include <math.h> | |||
int main(){ | |||
int count; | |||
int a[3000]; | |||
bool isJ[3000]; | |||
while(true) { | |||
if(feof(stdin)) break; | |||
scanf("%d", &count); | |||
if(feof(stdin)) break; | |||
for(int i=0; i<count; i++){ | |||
scanf("%d", &a[i]); | |||
} | |||
memset(isJ, false, 3000); | |||
if(count == 1) | |||
goto JOLLY; | |||
for(int i=1; i<count; i++){ | |||
int index = abs(a[i]-a[i-1]); | |||
if(isJ[index]) { | |||
goto NOT_JOLLY; | |||
break; | |||
} | |||
isJ[index] = true; | |||
} | |||
for(int i=1; i<count; i++){ | |||
if(isJ[i]==true); | |||
else { | |||
goto NOT_JOLLY; | |||
} | |||
if(i==count-1) goto JOLLY; | |||
} | |||
if(count==2&&isJ[1]) | |||
goto JOLLY; | |||
NOT_JOLLY: | |||
printf("Not jolly\n"); | |||
continue; | |||
JOLLY: | |||
printf("jolly\n"); | |||
continue; | |||
} | |||
return 0; | |||
} | |||
--- | |||
#include <stdio.h> | |||
#include <memory.h> | #include <memory.h> | ||
#include <math.h> | #include <math.h> | ||
| Line 15: | Line 66: | ||
} | } | ||
bool F=1; | |||
for(int i=1; i<count; i++){ | for(int i=1; i<count; i++){ | ||
int index = abs(a[i]-a[i-1]); | int index = abs(a[i]-a[i-1]); | ||
if(isJ[index]) { | if(isJ[index]) { | ||
F=0; | |||
break; | break; | ||
} | } | ||
| Line 24: | Line 76: | ||
} | } | ||
for(int i= | for(int i=1; i<count; i++){ | ||
if(isJ[i]) continue; | if(isJ[i]) continue; | ||
else { | else { | ||
F=0; | |||
break; | break; | ||
} | } | ||
} | } | ||
puts(F?"Jolly":"Not jolly"); | |||
memset(isJ, false, 3000); | memset(isJ, false, 3000); | ||
} | } | ||
Latest revision as of 07:46, 5 June 2011
- 왜 Accept가 안되나 했더니 검사하는 부분에서 count-1이어서......
#include <memory.h>
#include <math.h>
int main(){
int count;
int a[3000];
bool isJ[3000];
while(true) {
if(feof(stdin)) break;
scanf("%d", &count);
if(feof(stdin)) break;
for(int i=0; i<count; i++){
scanf("%d", &a[i]);
}
memset(isJ, false, 3000);
if(count == 1)
goto JOLLY;
for(int i=1; i<count; i++){
int index = abs(a[i]-a[i-1]);
if(isJ[index]) {
goto NOT_JOLLY;
break;
}
isJ[index] = true;
}
for(int i=1; i<count; i++){
if(isJ[i]==true);
else {
goto NOT_JOLLY;
}
if(i==count-1) goto JOLLY;
}
if(count==2&&isJ[1])
goto JOLLY;
NOT_JOLLY:
printf("Not jolly\n");
continue;
JOLLY:
printf("jolly\n");
continue;
}
return 0;
}
---
#include <stdio.h>
#include <memory.h>
#include <math.h>
int main(){
int count;
int a[3000];
bool isJ[3000] = {false};
while(true) {
if(feof(stdin)) break;
scanf("%d", &count);
if(feof(stdin)) break;
for(int i=0; i<count; i++){
scanf("%d", &a[i]);
}
bool F=1;
for(int i=1; i<count; i++){
int index = abs(a[i]-a[i-1]);
if(isJ[index]) {
F=0;
break;
}
isJ[index] = true;
}
for(int i=1; i<count; i++){
if(isJ[i]) continue;
else {
F=0;
break;
}
}
puts(F?"Jolly":"Not jolly");
memset(isJ, false, 3000);
}
return 0;
}