SPOJ_TBATTLE:Thor_vs_Frost_Giants(数论+二分)
题目大意是有n个数字,要求求出最短的区间使得这个区间内的数字之和是n的倍数,若有解,则输出区间两端位置(数字从0标号),若无解则输出一个-1.其中1
由数字的大小只有1e5,很容易想到解法,因为最小的几个质数2*3*5*7*11*13*17>1e5,所以1e5以内的数字至多有6个质因子,且若x是y的倍数,y=a1^b1*a2^b2...*ak^bk,其中ai为素数,x=a1^c1*a2^c2..
原创
2016-12-30 13:23:18 ·
443 阅读 ·
0 评论