結果
| 問題 |
No.489 株に挑戦
|
| コンテスト | |
| ユーザー |
dekueue
|
| 提出日時 | 2017-03-04 16:33:24 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 802 bytes |
| コンパイル時間 | 857 ms |
| コンパイル使用メモリ | 108,240 KB |
| 実行使用メモリ | 11,136 KB |
| 最終ジャッジ日時 | 2024-06-23 01:56:31 |
| 合計ジャッジ時間 | 3,186 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 1 |
| other | AC * 12 WA * 23 |
ソースコード
#include<iostream>
#include<iomanip>
#include<stack>
#include<queue>
#include<numeric>
#include<algorithm>
#include<string>
#include<random>
#include<map>
#include<bitset>
#include<set>
#include<cmath>
#define int long long
const int inf=1145141919;
int mod;
const int dd[]={0,-1,0,1,0};
using namespace std;
int p[100000];
signed main(){
int n,d,k;
int i;
cin>>n>>d>>k;
d++;
for(i=0;i<n;i++)
cin>>p[i];
set<pair<int,int> > ki;
set<pair<int,int> >::iterator q[100000];
for(i=0;i<d;i++)
q[i]=ki.insert(make_pair(p[i],-i)).first;
int ans=0,u=0,v=0;
for(i=0;i<n;i++){
auto x=*rbegin(ki);
auto z=x.first-p[i];
if(z>ans){
ans=z;
u=i;
v=-x.second;
}
ki.erase(q[i]);
if(i<n-d)
q[i+d]=ki.insert(make_pair(p[i+d],-i)).first;
}
cout<<ans*k<<endl;
cout<<u<<" "<<v<<endl;
}
dekueue