結果
| 問題 | 
                            No.1454 ツブ消ししとるなEasy
                             | 
                    
| コンテスト | |
| ユーザー | 
                             tails
                         | 
                    
| 提出日時 | 2021-03-31 22:22:36 | 
| 言語 | C  (gcc 13.3.0)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 4 ms / 2,000 ms | 
| コード長 | 1,218 bytes | 
| コンパイル時間 | 1,801 ms | 
| コンパイル使用メモリ | 33,628 KB | 
| 実行使用メモリ | 6,820 KB | 
| 最終ジャッジ日時 | 2024-12-15 19:44:59 | 
| 合計ジャッジ時間 | 1,172 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 4 | 
| other | AC * 16 | 
コンパイルメッセージ
main.c:41:1: warning: return type defaults to 'int' [-Wimplicit-int]
   41 | main(){
      | ^~~~
main.c: In function 'main':
main.c:56:17: warning: implicit declaration of function 'write' [-Wimplicit-function-declaration]
   56 |                 write(1,"Handicapped",11);
      |                 ^~~~~
main.c:57:17: warning: implicit declaration of function '_exit'; did you mean '_Exit'? [-Wimplicit-function-declaration]
   57 |                 _exit(0);
      |                 ^~~~~
      |                 _Exit
            
            ソースコード
#pragma GCC optimize("Ofast")
#pragma GCC target("avx2")
char*mmap();
#define rd(v) int v=0;{int _c;while(_c=*rp++-48,_c>=0)v=v*10+_c;}
#define WTHI(v) {long _z=v,_n=0,_d=0;while(++_n,_d=_d<<8|0x30|_z%10,_z/=10);*(long*)wp=_d;wp+=_n;}
#define WTLO(v) {long _z=v,_n=8,_d=0;while(_d=_d<<8|0x30|_z%10,_z/=10,--_n);*(long*)wp=_d;wp+=8;}
#define wt(v) if(v>=100000000){WTHI(v/100000000);WTLO(v);}else{WTHI(v);}
#define rep(v,e) for(int v=0;v<e;++v)
void radix_sort_aux(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]&255];
	}
	int t=0;
	for(int i=256;i--;){
		int u=c[i];
		c[i]=t;
		t+=u;
	}
	for(int i=0;i<n;++i){
		b[c[a[i]&255]++]=a[i]>>8|a[i]<<24;
	}
}
void radix_sort(unsigned*a,int n){
	radix_sort_aux(a,a+n,n);
	radix_sort_aux(a+n,a,n);
	radix_sort_aux(a,a+n,n);
	radix_sort_aux(a+n,a,n);
}
int a[200000];
main(){
	char*rp=mmap(0l,1l<<28,1,2,0,0ll);
	int k=0;
	rd(n);
	rd(m);
	rd(x);
	rd(y);
	rep(i,n){
		rd(ai);
		if(ai>y){
			a[k++]=ai;
		}
	}
	radix_sort(a,k);
	if(m<k&&a[m]>=x){
		write(1,"Handicapped",11);
		_exit(0);
	}
	long s=0;
	if(m>k) m=k;
	rep(i,m) s+=a[i];
	char wbuf[16],*wp=wbuf;
	wt(s);
	write(1,wbuf,wp-wbuf);
	_exit(0);
}
            
            
            
        
            
tails