본문 바로가기

For all category

PKU 2845. 01000001. WA 또 WA입니다. 어디가 잘못된건지... #include typedef struct { unsigned dats[3]; }bin; void copy(char *src, bin *dest) { int len, i; memset(&(dest->dats), 0, sizeof(int)*3); len=strlen(src)-1; for(i=0; len>=0; len--, i++) dest->dats[i/32]|=((1&(src[len]-'0'))dats[i]=carry&(((long long)1=32; } } void print(bin src) { int i; for(i=95; !(src.dats[i/32]&(1>(i%32))&1); } main() { int n, i; char bits[82]; bin a, b; .. 더보기
PKU [3372]. Candy Distribution [AC] #include int main() { int iNum; while(scanf("%d", &iNum) != EOF) { if((iNum & ~(iNum - 1)) == iNum) { printf("YES\n"); } else { printf("NO\n"); } } return 0; } In PKU Judge System. 간단합니다. Child 의 Number 가 2의 제곱수일 경우에는 YES. 그렇지 않다면 NO 가 되더군요. (iNum & ~(iNum - 1)) == iNum 코드에서 2의 제곱수인지를 검출합니다. 상당히 잘 알려진 방법이죠. 더보기
PKU 1989. The Cow Lineup. [판정:TLE] 일단, 제 문제해석에 댓글달아주신 milk님 감사합니다 (__) 기존의 알고리즘을 접어두고 이 방법으로 주워먹기하려 했으나 결과는 이렇네요 ㅋㅋ (가장 최근의 2건) 아무래도 소수열을 전부 살펴보는 것이다보니 N이 커지면서 시간이 많이 증가하는듯 합니다 시간 줄이는 방법을 좀 연구해봐야 할듯; #include int N, K; int *cows; void clear( int ary[], int sz ); int seek( int ary[] ); int main() { int i; scanf("%d %d", &N, &K); cows = new int[N]; for( i = 0; i < N; i++ ) { scanf("%d", &cows[i]); } printf("%d\n", seek(cows)); retu.. 더보기
PKU 3224. Go for lap Cup! AC get -_- #include using namespace std; int main() { int n, set[100], i, j, k; while (cin >> n) { for (i = 0; i > k; if (k >= 3) { set[i]++; } } } k = 0; for (i = 0; i set[k]) { k = i; } } cout 더보기
PKU 3372. Candy Distribution. AC get -_- #include using namespace std; int main() { int n; while (cin >> n) { while (!(n % 2) && n > 2) { n /= 2; } if (n == 1 || n == 2) { cout 더보기
죄송합니다. 죄송합니다. 진짜. 랩실도 들어가고, 이것저것 일에 치이다 보니까 도저히 시간이 안났네요. 어떻게 말해도 변명밖에 안되는 것 잘 알고 있습니다. 18 일 이후부터 조금 여유가 생기니까, 그때부터 재개하겠습니다. 참, 그리고 새로 멤버 한 분이 오실 거에요. reddelicious 님 입니다. 앞으로 정말 열심히 해 볼게요. 더보기
현재 문제풀이 현황과 가장 최근의 글 Dlbo군 AC 38개, 제가 AC 34개, 환타님이 AC 31개 --------------------------- 환타 : PKU 1218. THE DRUNK JAILER. AC ― 09. 12. 19 Mr.K : PKU 1989. The Cow Lineup. [판정:WA] ― 10. 01. 14 --------------------------- 이젠 아주 빡이 칩니다 이 블로그 내가 관리하냐? 더보기
PKU 1989. The Cow Lineup. [판정:WA] 스파킹 미안 -_-; 난 이게 한계임 #include int N, K; int *cows; int seek( int ary[] ); int main() { int i; scanf("%d %d", &N, &K); cows = new int[N]; for( i = 0; i N ) return 1; int x, y, z; int *check; int power = 1; // K's exponent, caution: overflow int bound; if( N % K ==.. 더보기
[PKU 1989. The Cow Lineup] 문제해석 N(10만 이하의 자연수)마리의 소가 K(1만 이하의 자연수)가지의 품종을 가지고 있다 그 N마리 소들의 품종을 수열로 나열해놓자 그러면 이 소수열(cow수열)에서 부분수열(연속하지 않아도 됨)을 찾을 수 있다 이 때, 1~K의 수들로 이루어진 임의의 수열 중 소수열의 부분수열이 아닌 것들이 있을 것이다 그러한 수열들 중 길이가 제일 짧은 수열의 길이를 출력하시오 ―가 이 문제의 내용입니다 =_= 문제의 입출력 예시를 보면 [입력: 편의상 수열을 가로로 나열했습니다] 14 5 1 5 3 2 5 1 3 4 4 2 5 1 2 3 [출력] 3 입니다 힌트에도 버젓이 나와있습니다만, 영어를 잘 모르는 탓에 처음 문제가 올라왔을 땐 제대로 읽지도 않았는데요 -_-; 오늘(24일)은 유독 눈에 들어오더라구요 위 수.. 더보기
모두들 메리크리스마스 N 해피뉴이어~ 는 개뿔 -_- PKU 1989. The Cow Lineup. [판정:TLE] 흑흑 같이 바람쐬러 나갈 여친 없는 것도 모자라서 저녁에 [군인놈 1명 공익놈 1명 예비역 1명]들과 모여서 술마시기로 했음 더러운 세상 ㅋㅋㅋㅋㅋㅋ 처음의 CE는 main함수의 return type이 void인 탓에 :( 기본 아이디어는 solving process에 올려서 트랙백을 달든지 하겠구요 -_-; 그 아이디어를 바탕으로 처음 끄적거렸던게 아래의 소스이고, #include int N, K; int *cows; int seek( int ary[] ); void main() { int i; scanf("%d %d", &N, &K); cows = new int[N]; for( i = 0; i < N; i++ ) { scanf("%d", &cows[i]); } printf("%d\n", seek(co.. 더보기
PKU 1547. Clay Bully. [판정:AC] 최근에 어떤분이 제 [Dividing Coins - RE] 글에다 RE뜨는 이유를 댓글로 적어주셨습니다 그 덕분에 현재 RE에서 WA로 발전한 상태입니다 -_-; 그런데 이것도 같은 이유였더군요 ㅋㅋ 문득 살펴보다가 내가 왜 문제를 제대로 안 읽었을까 하고 반성했다는 :( #include #include typedef struct student { int dimension; char name[12]; } student; int dscanf( int *pnum ) { scanf("%d", pnum); return *pnum; } void main() { int n; student list[10]; int i; while( dscanf(&n) != -1 ) { int temp; char tempstr[12].. 더보기
UVa 562. Dividing Coins. [판정:WA] 방금 전까지 몇번을 수정해보고 제출했으나 전부 WA입니다 거의 모든 예외를 처리했다고 생각했는데 뭔가 남아있나봐요 -_-; (↓실제 제출할 때는 테스트 케이스들은 빼고 제출했습니다) #include void clear( int ary[] ) { int i; for( i = 0; i < 100; i++ ) { ary[i] = 0; } } int mindiff( int ary[], int s ) { int i, j; int sum = 0; int opp; /* abbr. of opponent, take from sum */ int carry = 0; /* addition to opp */ int diff; int mind = 100000; /* abbr. of minimum difference */ int .. 더보기
PKU 1218. THE DRUNK JAILER. AC 문이 홀수번 열리고 닫히면 되니 약수의 개수가 홀수개인 제곱수의 개수를 찾아 출력합니다. #include #include int is_square(int n) { int a, b, count=1; switch(n%10) { case 2: case 3: case 7: case 8: return 0; break; } for(a=2, b=0; (n&1)==0; n>>=1, b++); count*=(b+1); for(a=3; n>1; a+=2) { for(b=0; n%a==0; n/=a, b++); count*=(b+1); } return (count&1); } int run(int n) { int i, count=0; for(i=1; i 더보기
PKU 2665. Trees. AC 이것도 풀이가 필요 없죠 #include int main() { int start, end, tree, n; scanf("%d %d", &tree, &n); while(tree+n) { tree++; while(n--) { scanf("%d %d", &start, &end); tree=tree-(end-start+1); } printf("%d\n", tree); scanf("%d %d", &tree, &n); } return 0; } 기말고사가 끝났어요 더보기
PKU 3030. Nasty Hacks. AC #include main() { int a, b, c, n; scanf("%d",&n); while(n--) { scanf("%d %d %d",&a,&b,&c); if(a>b-c) puts("do not advertise"); else if(a 더보기
PKU 2853. Sequence Sum Possibili. AC n을 더한 수의 개수로 나누면, 더한 값들의 평균값이 나옵니다. #include #include int run(int n) { int m, lmt, count=0; lmt=sqrt((int)2*n); for(m=2; m 더보기
UVa 562. Dividing Coins. [판정:RE] -_-; RE가 뭐하면 뜨는건지 잊어버려서 뭘 고쳐야될지 잘 모르겠음요 ㅋㅋㅋㅋ 활동하는 사람이 없으니 이거 원; #include void clear( int ary[] ) { int i; for( i = 0; i < 100; i++ ) { ary[i] = 0; } } int mindiff( int ary[], int s ) { int i, j; int sum = 0; int opp; /* abbr. of opponent, take from sum */ int carry = 0; /* addition to opp */ int diff; int mind = 500; /* abbr. of minimum difference */ int minind; /* index, indexing when mind is r.. 더보기
현재 문제풀이 현황과 가장 최근의 글 ↑가장 최근에 올라온 글에 붉게 표시했습니다 -_-; 활동이 없음에도 그만큼 문제푸는 사람도 없어서 여전히 Dlbo군이 38개의 AC로 1위자리를 지키고 있고요 -_- 그 뒤에 2위, 3위로 각각 제가 33개, 환타님이 27개의 AC를 가지고 있습니다 -------------------------------- 가장 최근에 올라온 글은 Reuent : PKU [3224]. Go for Lab Cup! [AC] ― 09. 11. 19 Sparking : UVa 562. Dividing Coins. ― 09. 12. 12 Mr.K : PKU 3372. Candy Distribution. [판정:AC] ― 09. 12. 01 외에는 지난번 통계와 같습니다 -_-; (각각 "작성자 : 제목 ― 작성일"의 형태로 .. 더보기
UVa 562. Dividing Coins. 동전 나누기 일반적으로 구리선은 네덜란드인이 발명한 것으로 알려져 있습니다. 두 네덜란드 사람이 구리로 만들어진 동전을 두고 싸우고 있었습니다. 그들은 동전을 매우 가지고 싶었기 때문에 싸움은 꽤나 난폭하게 벌어졌고 결국 동전을 매우 세게 양쪽에서 잡아당기는 바람에 구리선이 만들어지게 되었다고 합니다. 그러나 싸운 뒤의 일은 잘 알려져 있지 않은데요, 그 뒤에 두 사람은 동전으로 차있는 가방을 둘 중 한 명에게 주려고 했습니다. 가방 안의 들어있는 동전들은 똑같이 나눌순 없었습니다. 첫 번째 사람은 그 둘 모두가 아주 사소한 것까지 똑같이 나누고 싶어한다는 점에서 분배량이 똑같지 않다는 것을 참을 수 없었습니다. 요즘 들어서 동전 하나때문에 싸운다는것은 찾아보기 어려운 일이지만, 가능한한 최대한 공평하도.. 더보기
UVa 562. Dividing Coins Dividing coins It's commonly known that the Dutch have invented copper-wire. Two Dutch men were fighting over a nickel, which was made of copper. They were both so eager to get it and the fighting was so fierce, they stretched the coin to great length and thus created copper-wire. Not commonly known is that the fighting started, after the two Dutch tried to divide a bag with coins between the tw.. 더보기
PKU 3372. Candy Distribution. [판정:AC] N이 2의 거듭제곱일 때만 yes가 나오는게 맞았군요 -_-;; 문제에서 여러 케이스가 들어온다고 쓰여있었는데 못보고 EOF 처리를 하지 않아서 wa를 받았던 것 같습니다 ㅋㅋㅋ 소스는 올릴까 말까 고민중임요 -_-;; 마지막에 ac받은건 나름 숏코딩으로 줄여본겁니다 C 기준으로 24위에 안착해 있어요 ㅋㅋ 더보기
루저는 오지 마세요 치킨도 마음대로 못먹는 더러운 세상 ㅋㅋㅋㅋㅋㅋ 제가 사는 구의 구청 근처에 있는 집입니다 ㅋㅋㅋㅋ 루저의 난 때문에 피해를 입었는지 어쩐지는 -_-; 안가봐서 모름 ㅋ 더보기
PKU 3372. Candy Distribution. [판정:WA] 처음에는 머리로 그림을 몇번 그려보다가 간단하게 생각해서 1부터 N-1까지( 엄밀히 말하면 0부터 N-1까지 )의 합이 N의 배수가 아니면 무조건 yes, 그 이외에는 no인줄 알고 #include void main() { __int64 n; scanf("%I64d", &n); if( (n-1)*n/2 % n ) printf("YES\n"); else printf("NO\n"); } 이렇게 짰다가 한번 wa를 받았고 -_-; 그 다음은 노트에 그림을 직접 그려보면서 체크해봤더니 N이 2의 거듭제곱일 때에 한해 yes가 나오길래 ( 2~12까지 체크해보고, 추가로 16을 체크해봤음 ) #include void main() { int n; scanf("%d", &n); while( n > 1 ) { if( .. 더보기
PKU 3372. Candy Distribution 사탕 나누기 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3678 Accepted: 1902 설명 N 명의 아이들이 원을 이루고 서있고, 1번부터 N번까지 시계방향으로 번호를 매기고서 자신들의 사탕을 받기를 기다리고 있습니다. 담당하는 선생님은 다음의 방법을 따라서 사탕을 나누어주려고 합니다: 우선 선생님이 1번 학생과 2번 학생에게 사탕을 하나씩 줍니다. 그다음 시계방향으로 원을 따라 걸어서 3번 학생은 넘어가고 4번 학생에게 사탕을 줍니다. 그다음 두 명의 학생을 넘어가고 7번 학생에게 사탕을 줍니다. 이러한 방식을 통하여 사탕을 나누어 주려고 합니다. 이제 당신은 모든 학생이 최소한 하나 이상의 사탕을 받을 수 있는지에 대해 선생님에게 알.. 더보기
PKU 3372. Candy Distribution Candy Distribution Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 3678 Accepted: 1902 Description N children standing in circle who are numbered 1 through N clockwise are waiting their candies. Their teacher distributes the candies by in the following way: First the teacher gives child No.1 and No.2 a candy each. Then he walks clockwise along the circle, skipping one child (child No... 더보기
PKU 3224. Go for Lab Cup! [판정:AC] 몇자 안고치고 끝났네요 -_-; #include void main() { int n, temp; int winner, winsum; int wnr_high, wsum_high = 0; scanf("%d", &n); for( winner = 1; winner 더보기
PKU [3224]. Go for Lab Cup! [AC] #include int main() { int n; int row = 1; int column = 1; int temp = 0; int winner = 1; int input; int cntWin = 0; scanf("%d", &n); for(row=1 ; row 더보기
PKU 3224. Go for Lab Cup! [판정:WA] 행렬을 사용하지 않고 해볼랬더니 wa가 뜨네요 -_-; 그닥 틀린 부분은 없어보이는데; #include void main() { int n, temp; int winner, winsum; int wnr_high, wsum_high = 0; scanf("%d", &n); for( winner = 1; winner 더보기
현재 문제풀이 현황과 가장 최근의 글 현재 문제를 가장 많이 푼 사람은 Dlbo군이군요, AC가 38개로 가장 많습니다 그 다음은 제가 AC 31개, 환타님이 AC 27개로 뒤따르고 있지요// 나머지 세 분은 분발좀 하셔야겠네요 -_-.. --------------------------------------- 가장 최근의 글은 직접 돌아다니면서 찾아본 결과 Reuent : [090731] [JAP] 1. Event 와 Listener Dlbo : [091019] PKU 1547. Clay Bully. AC get. Sparking : [091109] PKU 3224. Go for Lab Cup! 환타 : [091109] 대학가서 놀라는 선생님의 말씀은 민상k : [090405] 근황 및 변명; Mr.K : [091113] 세상의 루저들은 나.. 더보기
세상의 루저들은 나를 따르라 사진 출처 : bestiz 더보기