链接
思路
暴力二分?
好像直接算也可。
代码
// #pragma GCC optimize(3)
#include <set>
#include <map>
#include <cmath>
#include <stack>
#include <queue>
#include <deque>
#include <string>
#include <cstdio>
#include <bitset>
#include <vector>
#include <cstdlib>
#include <cstring>
#include <sstream>
#include <iostream>
#include <algorithm>
#include <unordered_set>
#include <unordered_map>
#define endl '\n'
#define fi first
#define se second
#define PI 3.1415926
#define LL long long
#define INF 0x3f3f3f3f
#define lowbit(x) (-x&x)
#define PII pair<int, int>
#define ULL unsigned long long
#define PIL pair<int, long long>
#define mem(a, b) memset(a, b, sizeof a)
#define rev(x) reverse(x.begin(), x.end())
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
double x, y, d;
bool check(int mid) {
double r = 100.0 * mid;
return (r >= d);
}
void solve() {
int tt, T = 1;
cin >> tt;
while (tt -- ) {
cin >> x >> y;
d = (x * x + y * y) * PI;
int l = 1, r = INF;
while (l < r) {
int mid = l + r >> 1;
if (check(mid)) r = mid;
else l = mid + 1;
}
printf("Property %d: This property will begin eroding in year %d.\n", T ++ , l);
}
puts("END OF OUTPUT.");
}
int main() {
IOS;
solve();
return 0;
}