結果
問題 | No.397 NO MORE KADOMATSU |
ユーザー |
![]() |
提出日時 | 2021-02-22 18:21:00 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 29 ms / 2,000 ms |
コード長 | 774 bytes |
コンパイル時間 | 626 ms |
コンパイル使用メモリ | 31,232 KB |
実行使用メモリ | 25,220 KB |
平均クエリ数 | 39.11 |
最終ジャッジ日時 | 2024-07-17 02:57:28 |
合計ジャッジ時間 | 2,102 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 18 |
コンパイルメッセージ
main.c:26:1: warning: data definition has no type or storage class 26 | a[101],b[101]; | ^ main.c:26:1: warning: type defaults to 'int' in declaration of 'a' [-Wimplicit-int] main.c:26:8: warning: type defaults to 'int' in declaration of 'b' [-Wimplicit-int] 26 | a[101],b[101]; | ^ main.c:27:1: warning: data definition has no type or storage class 27 | r[100000],rn; | ^ main.c:27:1: warning: type defaults to 'int' in declaration of 'r' [-Wimplicit-int] main.c:27:11: warning: type defaults to 'int' in declaration of 'rn' [-Wimplicit-int] 27 | r[100000],rn; | ^~ main.c:29:1: warning: return type defaults to 'int' [-Wimplicit-int] 29 | main(){ | ^~~~ main.c: In function 'main': main.c:30:9: warning: implicit declaration of function 'read' [-Wimplicit-function-declaration] 30 | read(0,rbuf,sizeof rbuf); | ^~~~ main.c:47:9: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration] 47 | printf("%d\n",rn/2); | ^~~~~~ main.c:1:1: note: include '<stdio.h>' or provide a declaration of 'printf' +++ |+#include <stdio.h> 1 | #pragma GCC optimize("Ofast") main.c:47:9: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch] 47 | printf("%d\n",rn/2); | ^~~~~~ main.c:47:9: note: include '<stdio.h>' or provide a declaration of 'printf'
ソースコード
#pragma GCC optimize("Ofast")#pragma GCC target("avx2")char rbuf[1<<28];#define RD(v) int v=0;{int _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;}void bucket_sort(unsigned*a,unsigned*b,int n){int c[256];for(int i=0;i<256;++i){c[i]=0;}for(int i=0;i<n;++i){++c[a[i]>>8];}int t=0;for(int i=0;i<256;++i){int u=c[i];c[i]=t;t+=u;}for(int i=0;i<n;++i){b[c[a[i]>>8]++]=a[i]&255;}}a[101],b[101];r[100000],rn;main(){read(0,rbuf,sizeof rbuf);char*rp=rbuf;RD(n);for(int i=0;i<n;++i){RD(ai);a[i]=ai<<8|i;}bucket_sort(a,b,n);for(int i=0;i<n;++i){while(b[i]!=i){int t=b[i];b[i]=b[t];b[t]=t;r[rn++]=i;r[rn++]=t;}}printf("%d\n",rn/2);for(int i=rn;i;){i-=2;printf("%d %d\n",r[i],r[i+1]);}}