結果
問題 | No.942 プレゼント配り |
ユーザー |
![]() |
提出日時 | 2020-11-24 17:53:36 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 828 bytes |
コンパイル時間 | 426 ms |
コンパイル使用メモリ | 32,768 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-23 18:42:36 |
合計ジャッジ時間 | 2,047 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 18 |
コンパイルメッセージ
main.c:6:9: warning: initialization of 'char *' from incompatible pointer type 'long int *' [-Wincompatible-pointer-types] 6 | char*rp=buf; | ^~~ main.c:12:1: warning: return type defaults to 'int' [-Wimplicit-int] 12 | main(){ | ^~~~ main.c: In function 'main': main.c:13:9: warning: implicit declaration of function 'read' [-Wimplicit-function-declaration] 13 | read(0,buf,16); | ^~~~ main.c:47:9: warning: implicit declaration of function 'write' [-Wimplicit-function-declaration] 47 | write(1,buf,(char*)wp-(char*)buf); | ^~~~~ main.c:48:9: warning: implicit declaration of function '_exit'; did you mean '_Exit'? [-Wimplicit-function-declaration] 48 | _exit(0); | ^~~~~ | _Exit
ソースコード
#pragma GCC optimize("Ofast")#pragma GCC target("avx2")long buf[200000];long*wp=buf;char*rp=buf;#define RD(v) int v=0;{int _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;}void WT(int _z){long _d=0x2020202020202020l;while(_d=_d<<8|0x30|_z%10,_z/=10);*wp++=_d;}main(){read(0,buf,16);RD(n);RD(k);int m=n/k;if(k>1&k==n|~k&m&1){*wp++=*(long*)"No ";}else{*wp++=*(long*)"Yes ";if(k==1){for(int i=1;i<=n;++i){WT(i);}}else{int g=m-(m&1?3:0)>>1;int h=n-k*3>>1;int i2=k>>1;int i3=0;for(int i=0;i<k;++i){if(m&1){WT(h+1+i);WT(h+1+k+i2);WT(h+3*k-i3);i2+=1;if(i2>=k)i2-=k;i3+=2;if(i3>=k)i3-=k;}for(int j=0;j<g;++j){WT(i+j*k+1);WT(n-i-j*k);}}}}write(1,buf,(char*)wp-(char*)buf);_exit(0);}