这几天看的数论内容有大整数分解问题、大数k次方前x位数据高精度问题。
还解了几个VJ上的题目。
X题:
题意:对给定的n,输出1~n的所有的不同数字的数对的gcd的和。
思路:以10为例,与之互素的有φ(10)=4个(1,3,7,9),与之gcd=2的有φ(10/2)=4个(2,4,6,8),与之gcd=5的有φ(10/5)=1个(5)
这样,10提供的G值就是5*φ(2)+2*φ(5)+φ(10)=5+8+4=17。以此类推。
Q题:
题意:给定一个数n,求至少两个数的lcm=n,然后使得它们的和最小。
思路:分解质因子,将最小公倍数分解质因子,最小的ans便为各个质因子的相应次方数之和。但是当N取不同的值时会有不同的情况。
昨天的练习赛,是秦皇岛站的题目,难度还是挺大的感觉,只出了第四题。
题意:有一个叫“吃鸡”的游戏。给出两个半径R,r,R表示第一次的大圈半径,r表示第二次的小圈半径。第一次大圈的圆心位于(0,0),第二次小圈的圆心未知,但在大圈内,给你一个n,然后给出n个屋子的位置,问这些屋子中,第二次在小圈的概率最大的屋子有几个,都是哪些。
思路:当R>2*r时 R-2*r 中的点的概率是一样的,这个临界情况是内切 如果圆继续往外移 概率就不是1,当2*r-R时情况类似。