第十三届蓝桥杯模拟赛(第一期)题解-代码详解(C语言)

Posted 勇敢*牛牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第十三届蓝桥杯模拟赛(第一期)题解-代码详解(C语言)相关的知识,希望对你有一定的参考价值。

第十三届蓝桥杯模拟赛(第一期)题解-代码详解(C语言)

题解目录


(1)枚举


#include <stdio.h>
#include <stdlib.h>
int main() 
	int i=1000,n=9999,sum=0;
	for(;i<=9999;i++)
		if(i%128 == 0)
			sum++;
		 
	
	printf("%d",sum);
	return 0;


(2)枚举+多级判定


#include <stdio.h>
#include <stdlib.h>
int main() 
	int i=1000,n=9999,sum=0;
	for(;i<=n;i++)
		if((i/1000 == i/10%10) && (i/100%10 == i%10-1) )
			sum++;
		
	
	printf("%d",sum);
	return 0;

(3)阶乘计算(可多方法)


#include <stdio.h>
#include <stdlib.h>
int fun(int n)
	if(n==1)
		return 1;
	
	return fun(n-1)*n;
 
int main() 
	int i=1000,n=9999,sum=0;
	for(i=1;i<=21;i++)
		if(i%2 == 0)
			sum++;
		 
	
	printf("%d",sum);
	printf("\\n阶乘是:%d",fun(sum));
	return 0;

(4)上台阶问题dfs


#include <stdio.h>
#include <stdlib.h>

int max = 0;
int T[16] = 0,1,2,1,1,1,1,5,5,4,-1,-1,-2,-3,-1,-9;

void fun(int i,int x,int sum)//i为第步数,x为台阶数,sum为得分
	if(i>=7)//超过最新的步数 结束函数 
		return;
	
	if(x == 15)//到达15层 判定满足条件的分数 并且赋值 
		max = sum>max?sum:max;
		return; 
	
	int j=0;
	for(j=1;j<=4;j++)
		fun(i+1,x+j,sum +=T[x+j]);
		
 
int main() 
	fun(1,0,0);
	printf("%d",max);
	return 0;

(5)三层循环枚举

#include <stdio.h>
#include <stdlib.h>
int main() 
	int a[20] = 2,9,17,4,14,10,25,26,11,14,16,17,14,21,16,27,32,20,26,36;
	int i,j,k,sum=0;
	for(i=0;i<18;i++)
		for(j=i+1;j<19;j++)
			for(k=j+1;k<20;k++)
				if(a[i]<a[j] && a[j]<a[k])
					sum++;
				
			
		
	
	printf("%d",sum);
	return 0;

(6)速度计算


#include <stdio.h>
#include <stdlib.h>
int main() 
	int t=0,v=0;
	scanf("%d%d",&t,&v);
	printf("%d",t*v);
	return 0;

(7)棋盘颜色问题



观察可以知道奇数行对应的奇数列就是黑色块,偶数行对应的偶数列就是黑色的

#include <stdio.h>
#include <stdlib.h>

int main() 
	int n=0,m=0,i=1,j=1,sum=0;
	scanf("%d%d",&n,&m);
//	printf("n=%dm=%d\\n",n,m);
	for(i=1;i<=n;i++)
		for(j=1;j<=m;j++)
			if(i%2 != 0 && j%2 != 0)
//				printf("ji:%d,%d\\n",i,j); 
				sum++;
			else if(i%2 == 0 && j%2 == 0)
//				printf("ou:%d,%d\\n",i,j); 
				sum++; 
				
		
	
	printf("%d",sum);
	return 0;

(8)(9)(10)下次更新

以上是关于第十三届蓝桥杯模拟赛(第一期)题解-代码详解(C语言)的主要内容,如果未能解决你的问题,请参考以下文章

蓝桥杯国奖学长带你复盘第十三届蓝桥杯模拟赛

第十三届蓝桥杯 C/C++ 大学B组 题解

2022 第十三届蓝桥杯大赛软件赛省赛,C/C++ 大学B组题解

2022 第十三届蓝桥杯大赛软件赛省赛(第二场),C/C++ 大学B组题解

第十三届蓝桥杯省赛C++B组 真题题解(详细讲解+代码分析)看这篇就够了~~~

第十三届蓝桥杯省赛C++B组 真题题解(详细讲解+代码分析)看这篇就够了~~~