結果
問題 | No.740 幻の木 |
ユーザー |
![]() |
提出日時 | 2018-10-05 21:30:34 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 992 bytes |
コンパイル時間 | 1,340 ms |
コンパイル使用メモリ | 159,420 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-12 12:52:47 |
合計ジャッジ時間 | 1,797 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 6 |
ソースコード
#include <bits/stdc++.h>using namespace std;typedef unsigned long long ll;typedef std::pair<int, int> P;#define For(i, a, b) for(int i = (a); i < (b); i++)#define Rep(i, n) For(i, 0, (n))#define Rrep(i, n) for(int i = (n - 1); i >= 0; i--)#define All(i, x) for(typeof(x.begin()) i = x.begin(); i != x.end(); i++)#define ReAll(i, x) for(typeof(x.end()) i = x.end(); i != x.begin(); i--)#define pb push_backconst int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};const int MAX = 100000;const int INF = 1e9;const int MOD = 1000000007;const string END = "\n";void solve(){int n, m, p, q; cin >> n >> m >> p >> q;int a[12] = {};For(i, 1, 13){if(i >= p && i <= p + q - 1){a[i-1] = m * 2;}else{a[i-1] = m;}}bool flag = false;int ans = 0;while(n > 0){Rep(i, 12){if(flag) break;n -= a[i];ans += 1;if(n <= 0) flag = true;}}cout << ans << END;}int main(){cin.tie(0);ios::sync_with_stdio(false);solve();return 0;}