結果
問題 | No.3068 Speedrun (Hard) |
ユーザー |
|
提出日時 | 2025-03-21 22:29:06 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 861 ms / 2,000 ms |
コード長 | 1,267 bytes |
コンパイル時間 | 1,051 ms |
コンパイル使用メモリ | 78,828 KB |
実行使用メモリ | 5,888 KB |
最終ジャッジ日時 | 2025-03-21 22:29:50 |
合計ジャッジ時間 | 8,230 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge6 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 32 |
ソースコード
#include <iostream> using namespace std; int main() { int a, b, c, d, n; int p, q, r, s, t; cin >> a >> b >> c >> d >> n; cin >> p >> q >> r >> s >> t; for (int i = 0; i <= a; ++i) { for (int j = 0; j <= b; ++j) { int nn = n - i - j; int tt = t - p * i - q * j; if (nn < 0 || tt < 0) continue; if (r == s) { if (tt % r != 0) continue; int u = tt / r; if (u != nn) continue; if (u <= c + d) { int ii = min(u, c); int jj = u - ii; if (0 <= ii && ii <= c && 0 <= jj && jj <= d){ cout << i << " " << j << " " << ii << " " << (u - ii) << endl; return 0; } } } else { int re = tt - nn * r; if (re % (s - r) != 0) continue; int jj = re / (s - r); int ii = (tt - jj * s) / r; if (0 <= ii && ii <= c && 0 <= jj && jj <= d) { cout << i << " " << j << " " << ii << " " << jj << endl; return 0; } } } } return 0; }