結果
問題 |
No.555 世界史のレポート
|
ユーザー |
![]() |
提出日時 | 2017-08-11 23:02:49 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 771 bytes |
コンパイル時間 | 1,189 ms |
コンパイル使用メモリ | 157,708 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-12 21:41:37 |
合計ジャッジ時間 | 1,838 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 6 WA * 14 |
ソースコード
#include<bits/stdc++.h> using namespace std; #define FOR(i,a,b) for (int i=(a);i<(b);i++) #define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--) #define REP(i,n) for (int i=0;i<(n);i++) #define RREP(i,n) for (int i=(n)-1;i>=0;i--) typedef long long LL; int N; LL C,V; LL dp[50001]; int main(){ cin>>N>>C>>V; dp[1]=0; dp[2]=C+V; int now=1; for(int i=3;i<N+1;i++){ while(1){ if(i-now==1){ dp[i]=dp[i-1]+C+V; break; } int sa=i-now; if(dp[now]+((sa+now-1)/now)*V+C>=dp[now+1]+((sa-1+now)/(now+1))*V+C){ now++; }else{ dp[i]=dp[now]+((sa+now-1)/now)*V+C; break; } } } cout<<dp[N]<<endl; return(0); }