文章目录
题目结构
项目 | 题型 | 分值 | 题型 |
---|---|---|---|
第一题 | 结果填空 | 5 | 取位数 |
第二题 | 结果填空 | 5 | 大数求余 |
第三题 | 结果填空 | 10 | |
第四题 | 结果填空 | 10 | |
第五题 | 结果填空 | 15 | |
第六题 | 程序设计 | 15 | |
第七题 | 程序设计 | 20 | |
第八题 | 程序设计 | 20 | |
第九题 | 程序设计 | 25 | |
第十题 | 程序设计 | 25 |
填空题
第一题 平方和
思路:最后求平方和的话数值的范围可能超过int,所以数值类型定义为long long
#include <iostream>
using namespace std;
bool check(int t){
while(t){
int n=t%10;
t/=10;
if (n==2||n==0||n==1||n==9){
return true;
}
}
return false;
}
int main()
{
long long sum=0;
for(int i=1;i<=2019;i++){
if(check(i)){
sum+=(i*i);
}
}
cout<<sum<<endl;
return 0;
}
第二题 数列求值
给定数列 1, 1, 1, 3, 5, 9, 17, ,从第 4 项开始,每项都是前 3项的和。
求第 20190324 项的最后 44 位数字。
#include <iostream>
using namespace std;
int main(){
int a,b,c,d;
a=1,b=1,c=1;
for(int i=4;i<=20190324;i++){
d=(a+b+c)%10000;
a=b;
b=c;
c=d;
}
cout<<d;
}
当n较小的时候可以使用excel