记录SGU 刷题。
100. A+B
101. Domino
题意:经典的骨牌拼接问题,将数字看做点,骨牌看作边,转化成无向图求欧拉路。
102. Coprimes
题意:求euler phi函数。
105. Div 3
题意:给你一个数列 1, 12, 123, ..., 123456789, 12345678910, ....。问你前n(n < 2^31) 项中有多少个数可以被3整除。
观察:打个表,或者推一下就会发现规律。
107. 987654321 problem
题意:给你一个n(n <= 1e6),问你有多少n位数的平方以987654321结尾。
观察:以987654321结尾,即模1e9得到987654321,所以满足条件的数,最小的9位会有一些限制,其他较高位可以随意组合。首先暴力算出n=9时,答案是8,n小于9时答案是0。然后考虑n>9的情况,最高的n-9位有10^(n-9)-10^(n-10) = 9*10^(n-10)种选法,最低的9位有8种选法,所以答案是72*10^(n-10)。
方法:分情况讨论,暴力输出即可。