第十一届蓝桥杯大赛第二场省赛试题 C&C++ 研究生组-蛇形填数

761

solution1

cpp 复制代码
#include<stdio.h>
int main(){
	int a[50][50] = {0}, i = 1, j = 1, count = 1, op = 0;
	while(i < 40 && j < 40){
		a[i][j] = count++;
		if(!op) a[i][++j] = count++;
		while(j >= 2){
			a[++i][--j] = count++;
		}
		a[++i][j] = count++;
		while(i >= 2){
			a[--i][++j] = count++;
		}
		j++;
		op = 1;
	}
//	for(int i = 1; i < 21; i++){
//		for(int j = 1; j < 21; j++){
//			printf("%d ", a[i][j]);
//		}
//		printf("\n");
//	}
	printf("%d", a[20][20]);
	return 0;
}

solution2

cpp 复制代码
#include<stdio.h>
int main(){
	int a[50][50] = {0}, i = 1, j = 1, count = 1, op = 0;
	a[1][1] = count++;
	while(i < 40 && j < 40){
		a[i][++j] = count++;
		while(j >= 2){
			a[++i][--j] = count++;
		}
		a[++i][j] = count++;
		while(i >= 2){
			a[--i][++j] = count++;
		}
	}
//	for(int i = 1; i < 21; i++){
//		for(int j = 1; j < 21; j++){
//			printf("%d ", a[i][j]);
//		}
//		printf("\n");
//	}
	printf("%d", a[20][20]);
	return 0;
}
相关推荐
沐怡旸3 小时前
【底层机制】std::string 解决的痛点?是什么?怎么实现的?怎么正确用?
c++·面试
River4166 小时前
Javer 学 c++(十三):引用篇
c++·后端
感哥9 小时前
C++ std::set
c++
侃侃_天下9 小时前
最终的信号类
开发语言·c++·算法
博笙困了10 小时前
AcWing学习——差分
c++·算法
青草地溪水旁10 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(2)
c++·设计模式·抽象工厂模式
青草地溪水旁10 小时前
设计模式(C++)详解—抽象工厂模式 (Abstract Factory)(1)
c++·设计模式·抽象工厂模式
感哥10 小时前
C++ std::vector
c++
zl_dfq10 小时前
C++ 之【C++11的简介】(可变参数模板、lambda表达式、function\bind包装器)
c++
每天回答3个问题10 小时前
UE5C++编译遇到MSB3073
开发语言·c++·ue5