前言
整体评价
这相当于蓝桥云课 正式推出算法赛前的公测,主要面向的是大一新生。
比赛题还是以语法题为主,被戏称为"幼稚园杯",^_^。
链接:新生编程排位赛3
A. 蓝桥镇的月饼节
Q: 篮子能承重n,月饼一个重m,最多可以盛放几个?
#include <iostream>
using namespace std;
int main()
{
int n, m;
cin >> n >> m;
cout << n / m << endl;
return 0;
}
B. 小蓝的电视剧迷航
Q: 一集电视24小时,请问给你x小时,能否看完(主要是严格)?
#include <iostream>
using namespace std;
int main()
{
int t;
cin >> t;
while (t-- > 0) {
int x;
cin >> x;
cout << (x > 24 ? "YES" : "NO") << endl;
}
return 0;
}
C. 阿坤老师的水果篮
Q: 去掉最大的所有值和最小的所以值后,剩下的水果总甜度
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n;
cin >> n;
int minV = 0x3f3f3f3f, maxV = 0;
vector<int> arr(n);
for (int i = 0; i < n; i++) {
cin >> arr[i];
minV = min(minV, arr[i]);
maxV = max(maxV, arr[i]);
}
int res = 0;
for (int i = 0; i < n; i++) {
if (arr[i] != minV && arr[i] != maxV) {
res += arr[i];
}
}
cout << res << endl;
return 0;
}
D. 依依的画作
Q: 其一个序列中,后一个数十位数是前一位的个数,求不相同的个数
个位数表示为 v % 10
十位数表示为 v / 10 % 10
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n, ans = 0;
cin >> n;
vector<int> arr(n);
for (int i = 0; i < n;i++) {
cin >> arr[i];
if (i > 0) {
int t1 = arr[i - 1] % 10;
int t2 = arr[i] / 10 % 10;
if (t1 != t2) ans++;
}
}
cout << ans << endl;
return 0;
}
E. 阿坤老师的三种神秘动物
Q: 难得的求解方程组
设鸡为x, 牛为y,麒麟为z
x + y + z = A
2 * x + 4 * y + 4 * z = L
2 * y + z = H
三元一次方程解得
x = (4 * A - L) / 2 = 2*A - L/2
y = H + A - L / 2
z = L - H - 2*A
#include <iostream>
using namespace std;
int main()
{
int a, l, h;
cin >> a >> l >> h;
cout << l - h - 2 * a << endl;
return 0;
}