題意:就是判斷乙個數是不是17的倍數,但是這個數給的值會超過long long,那麼就不能直接判斷了,
提供兩個辦法解決這個題哈。
第乙個:高精度解決,上**,不廢話。
#include#includeint main()
else
if(a[k+1]-shi>0)
else
}int sum=0;
int t=1;
for(int i=k; i
第二種方法:數論解決掉。
我們舉個列來說明一下這個方法:
給定乙個數字為1234%17;
我們實際就是用的1234/17來看餘數是不是0,
那麼我們做除法怎麼做的呢?
首先第一位為1%17=1;
1*10+2=12;
12%17=12;
12*10+3=123;
123%17=4;
4*10+4=44;
44%17=10;
最終我就就是看看10為不為0既可。
10不為0,那麼就不能整除。
#include#include#include#include#include#includeusing namespace std;
char s[1000];
int main()
{ while(~scanf("%s",s))
{if(s[0]=='0')
break;
int len=strlen(s);
int m=0;
for(int i=0;i
zcmu 1311 數字整除
題述 定理 把乙個至少兩位的正整數的個位數字去掉,再從餘下的數中減去個位數的5倍。當且僅當差是17的倍數時,原數也是17的倍數 例如,34是17的倍數,因為3 20 17是17的倍數 201不是17的倍數,因為20 5 15不是17的倍數。輸入乙個正整數n,你的任務是判斷它是否是17的倍數。輸入檔案...
1 可以整除的數字
1 可以整除的數字 時間限制 2 s 記憶體限制 65536 kb accept 5 submit 19 提交 討論版 描述給你乙個正整數n,判斷n能否被3 5 8 11中的乙個或多個數整除。輸入第一行是乙個正整數t代表測試案例的數量。1 t 100 從第二行到第t 1行,每行是乙個 可能超過int...
去掉中間數字被整除
題目描述 有乙個 9 9 位數的正整數 x role presentation x x,去除掉中間的第5位的數字得到整數 y y 求問存在多少個這樣的 x role presentation x x,使得 x x 可以被 y role presentation y y整除.假設 x abcd ewx...