結果
| 問題 |
No.1862 Copy and Paste
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2022-02-27 12:57:48 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 699 bytes |
| コンパイル時間 | 2,065 ms |
| コンパイル使用メモリ | 196,472 KB |
| 最終ジャッジ日時 | 2025-01-28 03:43:01 |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 3 |
| other | AC * 2 WA * 25 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ll A, B;
cin >> A >> B;
ll N;
cin >> N;
if (N == 1) {
cout << "0\n";
return 0;
}
ll ans = 1LL << 61;
for (int i = 1; i <= N; ++i) {
ll root = floor(pow(N, 1.0 / i));
ll a = root, b = root + 1;
vector<ll> powa(i + 1), powb(i + 1);
powa[0] = powb[0] = 1;
for (int j = 0; j < i; ++j) {
powa[j + 1] = powa[j] * a;
powb[j + 1] = powb[j] * b;
}
for (int j = 0; j <= i; ++j) {
if (powa[j] * powb[i - j] >= N) {
ans = min(ans, (a + b * (a - 1)) * j + (a + b * (b - 1)) * (i - j));
}
}
if (root == 2) break;
}
cout << ans << '\n';
}