結果
| 問題 | No.489 株に挑戦 |
| コンテスト | |
| ユーザー |
%20
|
| 提出日時 | 2017-02-27 14:27:27 |
| 言語 | C90 (gcc 15.2.0) |
| 結果 |
AC
|
| 実行時間 | 22 ms / 1,000 ms |
| コード長 | 520 bytes |
| 記録 | |
| コンパイル時間 | 196 ms |
| コンパイル使用メモリ | 39,556 KB |
| 最終ジャッジ日時 | 2026-02-24 00:25:45 |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 35 |
コンパイルメッセージ
main.c:3:1: warning: data definition has no type or storage class
3 | b=1<<17;
| ^
main.c:4:1: warning: data definition has no type or storage class
4 | N,D,K,x[1<<18],j,k;
| ^
main.c:5:1: warning: data definition has no type or storage class
5 | l,r,L,R;
| ^
main.c:6:1: warning: data definition has no type or storage class
6 | i,t;
| ^
main.c: In function 'main':
main.c:9:13: warning: incompatible implicit declaration of built-in function 'scanf' [-Wbuiltin-declaration-mismatch]
9 | for(scanf("%d%d%d",&N,&D,&K);~scanf("%d",x+b+i++););
| ^~~~~
main.c:1:1: note: include '<stdio.h>' or provide a declaration of 'scanf'
+++ |+#include <stdio.h>
1 | max(a,b){return a>b?a:b;}
main.c:25:17: warning: incompatible implicit declaration of built-in function 'printf' [-Wbuiltin-declaration-mismatch]
25 | printf("%ld\n%d %d\n",m*K,j,k);
| ^~~~~~
main.c:25:17: note: include '<stdio.h>' or provide a declaration of 'printf'
ソースコード
max(a,b){return a>b?a:b;}
min(a,b){return a<b?a:b;}
b=1<<17;
N,D,K,x[1<<18],j,k;
l,r,L,R;
i,t;
long m;
main(){
for(scanf("%d%d%d",&N,&D,&K);~scanf("%d",x+b+i++););
for(i=b;--i;)x[i]=max(x[i*2],x[i*2+1]);
for(i=0;i<N;++i){
L=x[l=b+i];
R=x[r=b+min(i+D,N-1)];
for(;l>>1!=r>>1;l>>=1,r>>=1){
l&1||(L=max(L,x[l^1]));
r&1&&(R=max(R,x[r^1]));
}
if((t=max(L,R)-x[b+i]-m)>0){
j=i;
m+=t;
}
}
if(m){
for(k=j;x[b+k]-x[b+j]!=m;++k);
printf("%ld\n%d %d\n",m*K,j,k);
}else{
puts("0");
}
return 0;
}
%20