
遍历所有的x,y,判断x/y是不是即越约分数。
- #include
- using namespace std;
- int gcd(int x,int y)
- {
- int r;
- while(y!=0)
- {
- r=x%y;
- x=y;
- y=r;
- }
- return x;
- }
- int main()
- {
- // 请在此输入您的代码
- int sum=4039;//1/y和x/1都是
- for(int x=2;x<=2020;x++)
- {
- for(int y=2;y<=2020;y++)
- {
- int m=gcd(x,y);
- if(m==1) sum++;
- }
- }
- cout<
- return 0;
- }
蛇形填数
题目

思路
设i为某个数所在行,j为某个数所在列。(i+j)为偶数时,蛇形矩阵往右上方走,(i+j)为奇数时,蛇形矩阵往左下方走。(20+20)为偶数,往右上方走。所以mat[20][20]=mat[39][1]+19=mat[38][1]+20=1+2+...+38+20;
代码
- #include
- using namespace std;
- int main()
- {
- // 请在此输入您的代码
- int sum=0;
- for(int i=1;i<=38;i++)
- sum+=i;
- sum+=20;
- cout<
- return 0;
- }
七段码
题目


思路
总共七个二极管,每一个都可以选或不选,列举完七个二极管选或不选后,判断选好的二极管有没有连成一片(如果只选了一个那就不用判断)。
代码
- #include
- using namespace std;
- int used[10];
- int sum;
- int num;//使用灯泡的数量
- bool find(int n)
- {//找有没有与n相邻的灯泡在使用
- switch (n)
- {
- case 1: if(used[2]||used[6]) return true; break;
- case 2: if(used[1]||used[3]||used[7]) return true;break;
- case 3: if(used[2]||used[4]||used[7]) return true;break;
- case 4: if(used[3]||used[5]) return true;break;
- case 5: if(used[4]||used[6]||used[7]) return true;break;
- case 6: if(used[1]||used[5]||used[7]) return true;break;
- case 7: if(used[2]||used[3]||used[5]||used[6]) return true;break;
- }
- return false;
- }
- void dfs(int depth)
- {
- if(depth>7)
- {
- if(num==1)
- {
- sum++;
- return ;
- }
- for(int k=1;k<=7;k++)
- {
- if(used[k]==1&&!find(k))
- {//如果在使用的灯泡没有相邻灯泡在使用,那不符合。
- return ;
- }
- }
- sum++;
- return ;
- }
- //用这一个
- used[depth]=1;
- num++;
- dfs(depth+1);
- //不用这一个
- used[depth]=0;
- num--;
- dfs(depth+1);
- }
- int main()
- {
- sum=0;
- num=0;
- dfs(1);
- cout<
- }
结果
这个代码直接提交会超时,估计是递归次数太多,但是题目要求输出结果即可。所以我们可以在dev上先运行出结果,然后直接提交输出那个结果。

跑步锻炼
题目

思路
遍历2000.1.1到2020.10.1的每一天,周一或初一就+2,否则+1,最后输出。
代码
- #include
- using namespace std;
- int main()
- {
- // 请在此输入您的代码
- int sum=0;
- int year=2000,month=1,day=1;
- int week=6;
- int a[]={0,31,29,31,30,31,30,31,31,30,31,30,31};
- //2000,2004,2008,2012,2016,2020
- while(!(year==2020&&month==10&&day==2))
- {
- if(day==1||week==1){
- sum+=2;
- }else{
- sum+=1;
- }
- day++;
- if(week==7) week=1;
- else week++;
- week%=8;
- //跨月
- if(day==a[month]+1){
- //跨年
- if(month==12){
- month=0;//出去还会+变成1
- year++;
- if(year==2004||year==2008||year==2012||year==2016||year==2020) a[2]=29;
- else a[2]=28;
- }
- //跨越不跨年
- month++;
- day=1;
- }
- }
- cout<
- return 0;
- }
结果

平方和
题目

思路
遍历1到2019计算平方和
代码
- #include
- using namespace std;
- int main()
- {
- // 请在此输入您的代码
- long long sum=14362;
- for(int i=41;i<=99;i++)
- {
- int a=i%10;
- int b=i/10;
- if(a==2||a==0||a==1||a==9||b==0||b==1||b==9||b==2)
- sum+=i*i;
- }
- for(long long i=100;i<=999;i++)
- {
- int a=i%10;
- int b=i/10%10;
- int c=i/100;
- if(a==2||a==0||a==1||a==9||b==2||b==0||b==1||b==9||c==2||c==0||c==1||c==9)
- sum+=i*i;
- }
- for(long long i=1000;i<=2019;i++)
- {
- int a=i%10;
- int b=i/10%10;
- int c=i/10/10%10;
- int d=i/1000;
- if(a==2||a==0||a==1||a==9||b==2||b==0||b==1||b==9||c==2||c==0||c==1||c==9||d==2||d==1||d==0||d==9)
- sum+=i*i;
- }
-
-
相关阅读:
对Docker基础镜像的思考,该不该选择alpine
WPF —— 动画
static const与static constexpr的类内数据成员初始化
通过数(判断一个数是否在集合M中)
servlet -> spring-mvc -> spring-boot-> spring-security目录
mybatis03
Linux环境下安装docker环境(亲测无坑)
几个网站的百度收录都被清空,对方这是什么操作?怎么破?
Apollo planning之PathBoundsDecider
DeFi 入门必备:你需要了解的 DeFi 重要词语
-
原文地址:https://blog.csdn.net/m0_73441691/article/details/134254937