文章目录
2018-2019 ACM-ICPC, Asia Jiaozuo Regional Contest
A.Xu Xiake in Henan Province
**题意: ** 签到
题解: 签到
代码:
#include <bits/stdc++.h>
using namespace std;
int const N = 2e5 + 10;
typedef long long LL;
typedef pair<int, int> PII;
int n, m, T;
int main() {
// freopen("in.txt", "r", stdin);
cin >> n;
for (int i = 1; i <= n;++i) {
int cnt = 0;
for (int j = 1; j <= 4; ++j) {
int t;
cin >> t;
if (t) cnt++;
}
if (!cnt) cout << "Typically Otaku\n";
else if (cnt == 1) cout << "Eye-opener\n";
else if (cnt == 2) cout <<"Young Traveller\n";
else if (cnt == 3) cout << "Excellent Traveller\n";
else if (cnt == 4) cout << "Contemporary Xu Xiake\n";
}
return 0;
}
D.Keiichi Tsuchiya the Drift King
题意: 给定一辆车,问这辆车是否能够通过弯道
题解: 车的临界位置是车尾的刚好卡在拐弯的起始位置,因此可以计算这个位置所需要的最小的圆心角度。如果大于这个圆心角度,那么只需要计算 ( ( a + r ) 2 + b 2 ) − r \sqrt((a+r)^2 + b^2) - r ((a+r)2+b2)−r。如果小于这个圆心角度,通过画图可以看出需要乘上一个角度的偏移量,答案为: c o s ( a t a n ( b / ( a + r ) ) − d ) ( ( a + r ) 2 + b 2 ) − r cos(atan(b/(a+r)) - d)\sqrt((a+r)^2 + b^2) - r cos(atan(b/(a+r))−d)((a+r)2+b2)−r。临界的圆心角度为: a t a n ( b / ( a + r ) ) atan(b/(a+r)) atan(b/(a+r))