题目大意:
电梯的初始维持在0层,上升一层需要6秒,下降一层需要4秒,停止所花时间是4秒,问走完所给楼层需要多少时间。
往上是6秒/层,往下是4秒/层,每到一层要停5秒。第一个数字输入的是从0开始开门的次数。然后依次输入n个数计算即可。
1 |
|
题目大意:
电梯的初始维持在0层,上升一层需要6秒,下降一层需要4秒,停止所花时间是4秒,问走完所给楼层需要多少时间。
往上是6秒/层,往下是4秒/层,每到一层要停5秒。第一个数字输入的是从0开始开门的次数。然后依次输入n个数计算即可。
1 | #include <bits/stdc++.h> |
题目大意:
输出最大子序列和,以及首尾元素。
1 | #include <bits/stdc++.h> |
由于In case that the maximum subsequence is not unique, output the one with the smallest indices i and j (as shown by the sample case). 上面的temp要大于sum才更新。
题目大意:
告诉你M个工作人员的出入记录,最早进门的人负责开门,最晚出门的负责关门。
请问,谁开的门和谁关的门。
总体思想是把所有人的进出时间统一到一个可以比较的刻度上,比如,进出时间是当天的第几秒。
之后用2个临时变量保存当前着的进出时间和最早和最晚比,更新最早和最晚时间。
输出最后结果。
1 | #include <bits/stdc++.h> |
题目大意:
输入一个数字,把数字的每一位相加,用英文输出最后总和的每一位数字。
因为输入的数字可能很大,所以用字符串的形式输入。即使每一位是9,和也不过是900罢了。
之后转换为字符串,输出每一位的数字。
1 | #include <bits/stdc++.h> |
相同次数的系数合并,统计系数不为0的项,输出。
a[exp] += num; 比如a[2]也就是x的平方的系数。exp = 0也就是常数项。
因为没有说同一行输入不会出现相同次数的项,因此要+=,当然+=也能很好地处理系数不同的问题。
求8x²-7x+5与3x²-4x+1的差。
解: (8x²-7x+5)-(3x²-4x+1)
=8x²-7x+5-3x²+4x-1
=5x²-3x+41
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33#include <bits/stdc++.h>
using namespace std;
int main() {
int k1, k2, exp;
float num, a[1001] = {0.0};
scanf("%d", &k1);
while (k1--) {
scanf("%d%f", &exp, &num);
a[exp] += num;
}
scanf("%d", &k2);
while (k2--) {
scanf("%d%f", &exp, &num);
a[exp] += num;
}
int cnt = 0;
for (int i = 1000; i >= 0; i--) {
if (a[i]) cnt++;
}
printf("%d", cnt);
for (int i = 1000; i >= 0; i--) {
if (a[i])
printf(" %d %.1f", i, a[i]);
}
return 0;
}
2 1 2.4 0 3.2
2 2 1.5 1 0.5
3 2 1.5 1 2.9 0 3.2
题目要求:
计算A+B的和,以每三位一个”,”的格式输出。
用s数组记录每3位的数字,然后按照格式输出。
1 | #include <bits/stdc++.h> |