結果
問題 | No.641 Team Contest Estimation |
ユーザー |
![]() |
提出日時 | 2018-01-27 15:10:55 |
言語 | C (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 26 ms / 2,000 ms |
コード長 | 543 bytes |
コンパイル時間 | 469 ms |
コンパイル使用メモリ | 30,464 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-12-29 06:46:47 |
合計ジャッジ時間 | 1,126 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 9 |
コンパイルメッセージ
main.c: In function 'main': main.c:12:9: warning: implicit declaration of function 'scanf' [-Wimplicit-function-declaration] 12 | scanf("%lld%lld", &n, &k); | ^~~~~ main.c:1:1: note: include '<stdio.h>' or provide a declaration of 'scanf' +++ |+#include <stdio.h> 1 | typedef long long ll; main.c:12:9: warning: incompatible implicit declaration of built-in function 'scanf' [-Wbuiltin-declaration-mismatch] 12 | scanf("%lld%lld", &n, &k); | ^~~~~ main.c:12:9: note: include '<stdio.h>' or provide a declaration of 'scanf' main.c:24:25: warning: implicit declaration of function 'abs' [-Wimplicit-function-declaration] 24 | ll df = abs(n-2*cnt); | ^~~ main.c:1:1: note: include '<stdlib.h>' or provide a declaration of 'abs' +++ |+#include <stdlib.h> 1 | typedef long long ll; main.c:24:30: warning: 'abs' argument 1 promotes to 'll' {aka 'long long int'} where 'int' is expected in a call to built-in function declared without prototype [-Wbuiltin-declaration-mismatch] 24 | ll df = abs(n-2*cnt); | ~^~~~~~ <built-in>: note: built-in 'abs' declared here main.c:27:9: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration] 27 | printf("%lld\n%lld\n", mu, sg%mod); | ^~~~~~ main.c:27:9: note: include '<stdio.h>' or provide a declaration of 'printf' main.c:27:9: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch] main.c:27:9: note: include '<stdio.h>' or provide a declaration of 'printf' main.c:15:24: warning: iteration 249 invokes undefined behavior [-Waggressive-loop-optimizations] 15 | t[i+1] = t[i]<<1; | ~~~~~~~^~~~~~~~~ main.c:3:36: note: within this loop 3 | #define REP(i,a,b) for(ll (i)=a;(i)<(ll)(b);++(i)) | ~~~^~~~~~~~ main.c:4:
ソースコード
typedef long long ll;const ll mod = 1e9+9;#define REP(i,a,b) for(ll (i)=a;(i)<(ll)(b);++(i))#define rep(i,n) REP(i,0,n)#define L 250ll a[100000];ll t[L];int main(){ll n, k;scanf("%lld%lld", &n, &k);t[0] = 1;rep(i, L){t[i+1] = t[i]<<1;if(i%2) t[i+1]%=mod;}rep(i, n) scanf("%lld", a+i);ll mu = (t[k*2-1]-t[k-1]+(mod<<1))%mod*n%mod;ll sg = 0;rep(i, k){ll cnt = 0;rep(j, n) cnt += (1&(a[j]>>i));ll df = abs(n-2*cnt);(sg+=df*df%mod*t[(i+k-1)*2]%mod);}printf("%lld\n%lld\n", mu, sg%mod);return 0;}