比赛链接:
A | 有用的算法 |
题目大意:
给你一个序列a,判断序列a是不是"单调不降或单调不升的".
思路:
取补集,即如果序列同时不满足这两个条件的话,输出"bukeyi",反之,输出"erfen is useful!".
参考代码:
#include <bits/stdc++.h>
int main(){
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int n;
std::cin >> n;
std::vector<int> a(n);
for (int i = 0; i < n; i++)
std::cin >> a[i];
bool f1 = true, f2 = true;
for (int i = 1; i < n; i++)
f1 &= a[i] >= a[i - 1];
for (int i = 1; i < n; i++)
f2 &= a[i] <= a[i - 1];
std::cout << (f1 || f2 ? "erfen is useful!" : "bukeyi");
return 0;
}
B | 平衡数 |
参考代码:
#include <bits/stdc++.h>
void solve()
{
std::string s;
std::cin >> s;
std::cout << (s[0] + s[1] == s[2] + s[3] ? "YES\n" : "NO\n");
}
int main()
{
std::ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int t;
std::cin >> t;
while (t--)
{
solve();
}
return 0;
}
C | 三角形 |
思路:
只需要保证直线BP的斜率大于直线BC的斜率,并且直线PA的斜