hdu-1098解題報告
題意:已知存在乙個等式f(x)=5*x^13+13*x^5+k*a*x,輸入乙個正整數k(k<1000),要我們找出乙個最小的正整數a 使得任意的整數x,滿足f(x)%65等於0。如果整數a 不存在,則輸出「no」,存在的話就輸出a。
思路:採用特值法:當x=1時,f(x)=18+k*a;要使f(x)%65=0,所以只要在1-65的範圍內有乙個a滿足(18+k*a)%65=0這個條件,即可證明a存在。
同時注意a的範圍是在0-65間,因為如果a>65後,(18+a*k)%65以65為週期,如果a=66,(18+66*k)%65的效果與(18+1*k)%65的效果一樣;
#include
int main()
}if(a>=66)
printf("no\n");
}return 0;
}2018-04-13
hdu 1098 Lowest Bit 解題報告
題目意思 給出乙個數,觀察其二進位制表示,從右往左看,記錄遇到第乙個出現1的位置pos,做2 pos 的運算。這幾天杭電的告示 exercise is closed now 再加上想用一些簡單的題目來調劑一下,因此就做acm steps 吧。用了遞迴的方法來做。1 include 2 include...
費馬小定理 hdu 1098
題意 給出k。求使得f x 5 x 13 13 x 5 k a x對任意x都為65的倍數的a的最小值。mark 65 13 5。要使f x 是65的倍數,只需要f x 是5和13的倍數即可。先來分析13的。若f x 是13的倍數,有5 x 13 13 x 5 k a x 13 0,其中13 x 5項...
hdu1098 費馬小定理
題意 給出k。求使得f x 5 x 13 13 x 5 k a x對任意x都為65的倍數的a的最小值。mark 65 13 5。要使f x 是65的倍數,只需要f x 是5和13的倍數即可。先來分析13的。若f x 是13的倍數,有5 x 13 13 x 5 k a x 13 0,其中13 x 5項...