zoukankan      html  css  js  c++  java
  • 蓝桥杯 算法训练 ALGO-117 友好数

    算法训练 友好数  
    时间限制: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 }
  • 相关阅读:
    【分享】管理的最高境界是简单
    建立市场化风险评估机制推进地方政府信用评级建设
    手游-神雕侠侣 85侠客纪攻略(已通关)
    使用git的分支功能实现定制功能摘取与组合的想法
    组内正则培训记录
    组内Linq培训记录
    一次代码重构记录
    git代码库误操作还原记录
    关于代码重构的开始
    如何管理高手、大牛?
  • 原文地址:https://www.cnblogs.com/cao-lei/p/6544637.html
Copyright © 2011-2022 走看看