본문 바로가기

Solutions/테슬라's Solution

PKU 2840. Big Clock AC 네요~ 안녕하십니까~? 오늘도 한발 느린 테슬라 입니다~ #include #include #include int main(void) { int input,i,H,M; char Time[10],*token; char seps[]=":"; scanf("%d",&input); for(i = 0; i < input ; i++){ scanf("%s",Time); token = strtok(Time, seps); H = atoi(token); token = strtok(NULL, seps); M = atoi(token); if(M == 0){ H = (H+12)%24; if(H == 0) H =24; printf("%d\n",H); } else printf("0\n"); } return 0; } 우와 이런 쉬운 문제를 왜.. 더보기
PKU 2656. Unhappy Jinjin AC 네요~ 이야 오랜만입니다~ 시험과 과제의 틈에서 일단 살아있는 테슬라입니다. #include int main(void) { int i,K,temp1,temp2; int value=0; int flag=0; while(1){ scanf("%d",&K); for(i = 0;i 8) && (temp1+temp2 > value)){ value = temp1+temp2; flag = i+1; } } if(K == 0) break; else printf("%d\n",flag); value = 0; flag = 0; } } 네 이런거입니다. K값을 입력 받고 그 수만큼 루프를 돌려서 두 값을 입력받습니다. 그때 K값이 0이.. 더보기
PKU 1298. The Hardest Probelm Ever [AC] #include #include int main(void) { char order[15],in[200]; int i; while(1){ gets(order); //scanf("%s",order); //fflush(stdin); i=0; if(strcmp(order,"START")==0) gets(in); else if(strcmp(order,"END")==0){ while(in[i]!='\0'){ if(in[i] >= 'F' && in[i] = 'A') printf("%c",'Z'+in[i]-'E'); else printf("%c",in[i]); ++i; } printf("\n"); } else if(strcmp(order,"ENDOFINPUT")==0) break; } return 0; } 네 갑자기 .. 더보기
PKU 3438. Look and Say [AC] #include int main(void) { int a,b,i,j; char str[1001]; scanf("%d",&a); for(i=0;i 더보기
PKU 3030. Nasty Hacks [AC] #include int main(void){ int teca,i,j; int in[3]; int re1,re2; scanf("%d",&teca); for(i=0;i 더보기
PKU 2521. How much did the businessman lose [AC] #include int main(void) { int in[4],i,result; while(1){ for(i=0;i 더보기
PKU 2636. Electrical Outlets [AC] #include int main(void) { int a,i,j,in1,in2,full; scanf("%d",&in1); //테스트 케이스의 개수 for(i=0;i 더보기
PKU 3094. Quicksum AC 네요~ #include #include int main(void) { char index[1000]; int i=0,temp=0; while(1){ gets(index); temp=0; i=0; if(strcmp(index,"#")==0) break; while(index[i]!='\0'){ if(index[i]==' ') temp=temp; else temp=temp+((i+1)*(index[i]-64)); i++; } printf("%d\n",temp); } return 0; } 일단 문자열값을 입력받습니다. "#"인지 판별한뒤 맞다면 종료 아니라면 프로그램이 진행됩니다. 일단 문자열의 끝이 아니라면, 입력받은 값이 ' '(공백문자)인지 판별하여 맞으면 그냥 다음으로 넘어가고, 아니라면 temp에 해당 배열.. 더보기
PKU 3077. Rounders AC 네요~ include #include int main(void) { char index[10]; int i=0,j,k,count,out; scanf("%d",&count); for(k=0;k=1 ; j--){ if(j==1){ if(index[1]==':'){ index[1]='0'; index[0]='1'; } } else if(index[j] >= '5' || index[j]==':'){ index[j-1]++; index[j]='0'; } else index[j]='0'; } } out=atoi(index); printf("%d\n",out); } return 0; } 음 이상하게 짠듯하긴한데... 우선 저는 문자열 형태로 배열에 값을 입력 받았습니다. index[0]은 0으로 넣어두고 index[1]부터.. 더보기
PKU 2388. Who's in the Middle AC 네요~ #include void bubble(int a[], int n) { int i,j,temp,count=0; for(i=0 ; i 더보기
PKU 1804. Brainman AC 네요~ 음... 버블소트군요... 네...버블소트입니다... #include int bubble(int a[], int n) { int i,j,temp,count=0; for(i=0 ; i 더보기
PKU 2649. Factovisors. TLE네요... 으으 결국 받지 못했습니다...AC... 저는 2개 코드를 짰는데요... 처음은 링크드리스트를 이용한 코드입니다... #include #include typedef struct pnode{ int data; int count; struct pnode *next; }NODE; NODE *insert(NODE *p,int num) { NODE *temp,*curr,*prev; curr=p; prev=NULL; if(p==NULL){ p=(NODE *)malloc(sizeof(NODE)); p->data=num; p->count=0; p->count=p->count+1; p->next=NULL; return p; } else{ if(curr->data > num){ temp = (NODE *)malloc(si.. 더보기
PKU 1844. Sum. AC 네요 #include int main(void) { int temp,sum=0,count=0; scanf("%d",&temp); while(1){ if((sum >= temp) && (sum-temp)%2==0) break; else{ count++; sum=sum+count; } } printf("%d",count); return 0; } 음, 다행이도 AC를 받았네요 저의 경우는 우선 덧셈을 해서 입력값보다 커야하고, 더해진값과 입력값의 차이가 짝수인 경우를 판별하여 확인했습니다. 우선 1부터이므로 -가 붙어도 증가하지 않으므로 입력값보다 커질때까지 더하였고, -가 붙을때 더하였던 값이 취소되고 거기에서 -가 되므로 빠지는 값은 2n일것입니다. 예를 들어 1+2와 -1+2의 차이는 2*1 즉 2n의 차이가.. 더보기