[Java] 藍橋杯ALGO-117 演算法訓練 友好數
問題描述
有兩個整數,如果每個整數的約數和(除了它本身以外)等於對方,我們就稱這對數是友好的。例如:
9的約數和有:1+3=4
4的約數和有:1+2=3
所以9和4不是友好的。
220的約數和有:1 2 4 5 10 11 20 22 44 55 110=284
284的約數和有:1 2 4 71 142=220
所以220和284是友好的。
編寫程式,判斷兩個數是否是友好數。
輸入格式
一行,兩個整數,由空格分隔
輸出格式
如果是友好數,輸出”yes”,否則輸出”no”,注意不包含引號。
樣例輸入
220 284
樣例輸出
yes
資料規模和約定
兩個整數都小於10000
package algo117;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int b = in.nextInt();
in.close();
if (b == factor(a) && a == factor(b)) {
System.out.println("yes");
} else {
System.out.println("no");
}
}
private static int factor(int a) {
int sum = 0;
for (int i = 1; i < a; i++) {
if (a % i == 0) {
sum += i;
}
}
return sum;
}
}
相關文章
- 藍橋杯 (java)演算法訓練 數對Java演算法
- 藍橋杯--演算法訓練演算法
- 藍橋杯—演算法訓練演算法
- [藍橋杯][演算法訓練VIP]方格取數演算法
- 藍橋杯訓練2
- 藍橋杯 演算法訓練 素因子去重(Java)演算法Java
- 藍橋杯:入門訓練 Fibonacci數列
- 藍橋杯 演算法訓練 操作格子 (線段樹)演算法
- 藍橋杯訓練--母牛的故事(很清晰的思路)
- 藍橋杯演算法提高——字串匹配(Java)演算法字串匹配Java
- 藍橋杯:基礎練習 查詢整數
- Java實現 藍橋杯 演算法提高 八數碼(BFS)Java演算法
- 藍橋杯 分巧克力(Java)Java
- [藍橋杯][演算法提高VIP]大數加法演算法
- 藍橋杯-帶分數
- 藍橋杯-排列序數
- 藍橋杯 整數拼接
- 閒聊藍橋杯JAVA - 生成迴文數Java
- 【藍橋杯】練習題目彙總
- [Java] 藍橋杯ADV-185 演算法提高 五次方數Java演算法
- 藍橋杯試題 基礎練習 特殊迴文數
- 藍橋杯
- 藍橋杯-合併數列
- 藍橋杯-波動數列
- 藍橋杯練習系統題目集
- 【藍橋杯練習--二分】789. 數的範圍
- 藍橋杯-子 2023 / 雙子數
- 藍橋杯-連號區間數
- 藍橋杯-買不到的數目
- 藍橋杯——特別數的和
- 藍橋杯真題:純質數
- [Java] 藍橋杯ADV-203 演算法提高 8皇后·改Java演算法
- 藍橋杯基礎練習-找出唯一成對的數
- 藍橋杯 演算法提高 字串壓縮演算法字串
- Java藍橋杯14年第五題Java
- 藍橋杯 (java) 第39級階梯Java
- 藍橋杯-分巧克力
- 藍橋杯-N皇后