码迷,mamicode.com
首页 > 编程语言 > 详细

蓝桥杯 算法训练 ALGO-117 友好数

时间:2017-03-13 20:33:23      阅读:355      评论:0      收藏:0      [点我收藏+]

标签:buffer   div   不包含   amp   好的   bin   i++   ++   nbsp   

算法训练 友好数  
时间限制:1.0s   内存限制:256.0MB
问题描述
  有两个整数,如果每个整数的约数和(除了它本身以外)等于对方,我们就称这对数是友好的。例如:
  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
 
示例代码:
 1 import java.io.BufferedReader;
 2 import java.io.IOException;
 3 import java.io.InputStreamReader;
 4 
 5 public class Main {
 6     public static void main(String[] args) throws IOException {
 7         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 8         String[] str = br.readLine().split(" ");
 9         int m = Integer.parseInt(str[0]);
10         int n = Integer.parseInt(str[1]);
11         int sum_m = f(m);
12         int sum_n = f(n);
13         
14         if(sum_m == n && sum_n == m){
15             System.out.println("yes");
16         }else
17             System.out.println("no");
18         
19     }
20 
21     private static int f(int x) {
22         int sum = 0;
23         for(int i = 1 ; i < x ; i++ ){
24             if(x % i ==0){
25                 sum += i;
26             }
27         }
28         return sum;
29     }
30     
31 }

 

蓝桥杯 算法训练 ALGO-117 友好数

标签:buffer   div   不包含   amp   好的   bin   i++   ++   nbsp   

原文地址:http://www.cnblogs.com/cao-lei/p/6544637.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!