題目描述:
古希臘數學家畢達哥拉斯在自然數研究中發現,220的所有真約數(即不是自身的約數)之和為:
1+2+4+5+10+11+20+22+44+55+110=284。
而284的所有真約數為1、2、4、71、 142,加起來恰好為220。人們對這樣的數感到很驚奇,並稱之為親和數。一般地講,如果兩個數中任何乙個數都是另乙個數的真約數之和,則這兩個數就是親和數。
你的任務就編寫乙個程式,判斷給定的兩個數是否是親和數
輸入:
輸入資料第一行包含乙個數m,接下有m行,每行乙個例項,包含兩個整數a,b; 其中 0 <=a,b <=600000 ;
輸出:
對於每個測試例項,如果a和b是親和數的話輸出yes,否則輸出no。
樣例輸入
2 220 284
100 200
樣例輸出
yes
no 分析:厲害的cp之一發現因數的個數正好是n。同時注意到因數包括1但是不包括其本身,如果用一重迴圈,那麼從i= 2開始遍歷,最後加上因數1.
**注意 :sum每次要清零。
注意:1的因數不包括其本身,所以1 和 1 不是親和數
0 和 0 是親和數**
#include"stdio.h"
#include"math.h"
int main()
if(m == 0&& n == 0)
for(i = 2; i <= sqrt(n); i++)
sum++;
if(sum == m)
sum++;
if(sum == n)
printf("yes\n");
else
printf("no\n");
}else
printf("no\n");
}return
0;}
NEUQ 1431 快速冪入門
時間限制 1 sec 記憶體限制 128 mb 快速冪為我們的冪運算提供了乙個很快的方法。這道題要求你練習剛剛學會的快速冪。即計算a n。我們都知道整數能夠表示的範圍有限,所以這裡要求讓結果對100000007取模。多組輸入資料,請處理至檔案結尾 每組資料報含兩個整數,a與n,輸入保證a和n都在32...
NEUQ 1213 半數集問題
時間限制 1 sec 記憶體限制 128 mb 問題描述 給定乙個自然數n,由n開始可以依次產生半數集set n 中的數如下。1 n set n 2 在n的左邊加上乙個自然數,但該自然數不能超過最近新增的數的一半 3 按此規則進行處理,直到不能再新增自然數為止。例如,set 6 半數集set 6 中...
NEUQ 1256 核電站問題
時間限制 1 sec 記憶體限制 128 mb 乙個核電站有n個放核物質的坑,坑排列在一條直線上。如果連續 個坑中放入核物質,則會發生 於是,在某些坑中可能不放核物質。現在,請你計算 對於給定的n,求不發生 的放置核物質的方案總數。輸入檔案只有多行,每行對應乙個正整數n 輸出檔案有多行,每行只有乙個...