結果
| 問題 |
No.338 アンケート機能
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-02-14 13:29:10 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 520 ms / 2,000 ms |
| コード長 | 823 bytes |
| コンパイル時間 | 1,364 ms |
| コンパイル使用メモリ | 160,488 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-08 03:03:18 |
| 合計ジャッジ時間 | 18,797 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 28 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<(n);++i)
#define trace(var) cerr<<">>> "<<#var<<" = "<<var<<endl;
using Integer = unsigned long long;
template<class S, class T> inline
ostream& operator<<(ostream&os, pair<S,T> p) {
return os << '(' << p.first << ", " << p.second << ')';
}
template<typename Nat=int>
pair<Nat, Nat> n2nn(Nat a) {
int i = 0;
while (a > i) {
++i;
a -= i;
}
return make_pair(a, i-a);
}
int rat(int a, int b) {
double r = 100.0 * a / (a+b);
return int(round(r));
}
int main() {
int ans = 1e9;
int A, B; cin >> A >> B;
int a, b;
rep (i, 1000000) {
if (i == 0) continue;
tie(a,b) = n2nn(i);
if (rat(a,b) != A) continue;
if (rat(b,a) != B) continue;
ans = min(ans, a+b);
}
cout << ans << endl;
return 0;
}