PTA 7-221 国王的金币
国王将金币作为工资,发放给忠诚的骑士。
第1天,骑士收到1枚金币,1
之后两天,每天收到2枚金币,1 2 2
之后3天每天收到3枚金币…….。1 2 2 3 3 3
这种工资发放模式一直延续。
求给定天数,计算一个骑士获得的金币。
输入格式:
输入发金币的天数
输出格式:
输出获得的金币总数
输入样例:
在这里给出一组输入。例如:
2
输出样例:
在这里给出相应的输出。例如:
3
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
代码:
#include<stdio.h>
int main(){
int date, sum = 0;
int count = 0; //记录第几天
scanf("%d", &date);
for(int i = 1; i <= date; i++){ //循环给定天数
for(int j = 1; j <= i; j++){ //之后j天,给j次j枚金币
sum += i; //求和
count++; //记录第几天
if(count == date){ //若给定天数等于记录的天数就输出和且程序结束
printf("%d", sum);
return 0;
}
}
}
return 0;
}
解题思路:
step1:循环给定天数
step2:循环之后 j 天,给 j 次 j 枚金币并记录一次天数
step3:当给定的天数等于记录的天数输出且程序结束
归属知识点:
循环结构
条件判断