7
-3 整除光棍 (
40分)
這裡所謂的「光棍」,並不是指單身汪啦~ 說的是全部由1組成的數字,比如1、11、111、1111等。傳說任何乙個光棍都能被乙個不以5結尾的奇數整除。比如,111111就可以被13整除。 現在,你的程式要讀入乙個整數x,這個整數一定是奇數並且不以5結尾。然後,經過計算,輸出兩個數字:第乙個數字s,表示x乘以s是乙個光棍,第二個數字n是這個光棍的位數。這樣的解當然不是唯一的,題目要求你輸出最小的解。
輸入格式:
輸入在一行中給出乙個不以5結尾的正奇數x(<
1000)。
輸出格式:
在一行中輸出相應的最小的s和n,其間以1個空格分隔。
輸入樣例:
31
輸出樣例:
3584229390681
15
/*
解決思路:
利用整型陣列來裝被除數,因為題目限定目標的被除數都是光棍數,所以讓都是元素都是1的不同大小陣列來整除輸入數即可。
整除方法:採用大數除法
參考文章:大數除法運算(
dividend:被除數
divisor:除數
quotient:商
remainder:餘數
l:除數的位數
count:用來記錄被除數也就是光棍數的大小
*/#include
#include
#include
void
main()
//開始通過count的不斷增大測試符合要求的光棍數和商
while
(remainder!=0)
//求商和餘數
for(i=
0; i)//若未整除成功,繼續前往下乙個光棍數
count++;}
//列印出商和餘數
l2=0;
while
(quotient[l2]==0
&&l2l2++
;for
(i=l2; i1; i++
)printf
("%d"
,quotient[i]);
printf
(" %d"
,count-1)
;}
整除光棍 20分
這裡所謂的 光棍 並不是指單身汪啦 說的是全部由1組成的數字,比如1 11 111 1111等。傳說任何乙個光棍都能被乙個不以5結尾的奇數整除。比如,111111就可以被13整除。現在,你的程式要讀入乙個整數x,這個整數一定是奇數並且不以5結尾。然後,經過計算,輸出兩個數字 第乙個數字s,表示x乘以...
5 75 整除光棍 20分
這裡所謂的 光棍 並不是指單身汪啦 說的是全部由1組成的數字,比如1 11 111 1111等。傳說任何乙個光棍都能被乙個不以5結尾的奇數整除。比如,111111就可以被13整除。現在,你的程式要讀入乙個整數x,這個整數一定是奇數並且不以5結尾。然後,經過計算,輸出兩個數字 第乙個數字s,表示x乘以...
7 63 整除光棍(20 分)
7 63 整除光棍 20 分 這裡所謂的 光棍 並不是指單身汪啦 說的是全部由1組成的數字,比如1 11 111 1111等。傳說任何乙個光棍都能被乙個不以5結尾的奇數整除。比如,111111就可以被13整除。現在,你的程式要讀入乙個整數x,這個整數一定是奇數並且不以5結尾。然後,經過計算,輸出兩個...