栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

2020年第十一届蓝桥杯 - 省赛 - Python大学组 - D.蛇形填数

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2020年第十一届蓝桥杯 - 省赛 - Python大学组 - D.蛇形填数

这道题同样还是:
2020年第十一届蓝桥杯 - 省赛 - C/C++研究生组 - D.蛇形填数
2020年第十一届蓝桥杯 - 省赛 - Java研究生组 - D.蛇形填数
2020年第十一届蓝桥杯 - 省赛 - C/C++大学生A组 - C.蛇形填数


Ideas

这题其实严格意义上属于一道找规律的题目,并不是啥算法题。

我们可以先按照它的规律多写几行。

1  2  6  7  15 16 28 29 45
3  5  8  14 17 27 30 44
4  9  13 18 26 31 43
10 12 19 25 32 42
11 20 24 33 41
21 23 34 40
22 35 39
36 38
37

可以发现我们对角线上的元素变化1 -> 5 -> 13 -> 25 -> 41。

然后就是小学生找规律了:
1 + 4 = 5
1 + 4 + 8 = 13
1 + 4 + 8 + 12 = 25
1 + 4 + 8 + 12 + 16 = 41

规律显而易见,然后我们就可以开始敲代码模拟这个过程了。

Code C++
#include  

using namespace std;

int main() {
	int n = 20, ans = 1;
	for (int i = 1; i < n; i++) {
		ans += i * 4;
	}
	cout << ans << endl;
	return 0;
}
Python
if __name__ == '__main__':
    ans, n = 1, 20
    for i in range(n):
        ans += i * 4
    print(ans)
Answer: 761
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/698277.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号