2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学C组 - A.约数个数

Posted Alex_996

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学C组 - A.约数个数相关的知识,希望对你有一定的参考价值。

Ideas

我发现我用C++实现的时候搞复杂了,还用了集合去一个个insert它的约数,不过我其实是想复习一下STL的set类型,嗯对,就是这样。

用Python写的就正常多了,就是判断余数是否为0就可以了。

Code

C++

#include <set>
#include <iostream>

using namespace std;

int main() 
	int n = 78120;
	set<int> s;
	for(int i = 1; i < n + 1; i++) 
		float div = n / i;
		if(i * int(div) == n) 	// 判断 div 是否为整数且满足条件 
			cout << i << " * " << div << " = " << i * div << endl;
			s.insert(i);
			s.insert(int(div));
		
	
	cout << "ans = " << s.size() << endl;
	return 0;

Python

if __name__ == '__main__':
    num, ans = 78120, 0
    for i in range(1, num + 1):
        if num % i == 0:
            ans += 1
    print(ans)

Answer:96

以上是关于2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学C组 - A.约数个数的主要内容,如果未能解决你的问题,请参考以下文章

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 国赛 - C&C++大学B组 - A.美丽的2

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 国赛 - C&C++大学B组 - B.扩散

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学C组 - A.约数个数

2 0 2 0 年 第 十 一 届 蓝 桥 杯 - 省赛 - C&C++大学A组 - B.既约分数

2019年第十届蓝桥杯组队题目第一题

十二届蓝桥杯Scratch国赛试题