zoukankan      html  css  js  c++  java
  • PAT 1064. 朋友数(20)

    如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”。例如123和51就是朋友数,因为1+2+3 = 5+1 = 6,而6就是它们的朋友证号。给定一些整数,要求你统计一下它们中有多少个不同的朋友证号。注意:我们默认一个整数自己是自己的朋友。

    输入格式:

    输入第一行给出正整数N。随后一行给出N个正整数,数字间以空格分隔。题目保证所有数字小于104

    输出格式:

    首先第一行输出给定数字中不同的朋友证号的个数;随后一行按递增顺序输出这些朋友证号,数字间隔一个空格,且行末不得有多余空格。

    输入样例:

    8
    123 899 51 998 27 33 36 12
    

    输出样例:

    4
    3 6 9 26
    
     1 #include<stdio.h>
     2 #include<string.h>
     3 #include<stdlib.h>
     4 #include<ctype.h>
     5 #include<math.h>
     6 int cmp(const void *a,const void *b){
     7     return *(int*)a-*(int*)b;
     8 }
     9 int main(){
    10     int n;
    11     char a[10];
    12     int b[10010];
    13     int len;
    14     int sum;
    15     int h=0;
    16     int j;
    17     scanf("%d",&n);
    18     for(int i=0;i<n;i++){
    19         scanf("%s",a);
    20         sum = 0;
    21         len = strlen(a);
    22         for(j=0;j<len;j++){
    23             sum = sum+(a[j]-'0');
    24         }
    25         for(j=0;j<h;j++){
    26             if(sum==b[j]){
    27                 break;
    28             }
    29         }
    30         if(j==h){
    31             b[h++] = sum;
    32         }
    33         
    34     }
    35     qsort(b,h,sizeof(int),cmp);
    36     printf("%d
    ",h);
    37     for(int i=0;i<h;i++){
    38         if(!i)
    39             printf("%d",b[i]);
    40         else
    41             printf(" %d",b[i]);
    42     }
    43      
    44 } 
  • 相关阅读:
    float浮动后,父级元素高度塌陷和遮盖问题
    Json
    测试连接数据库是否成功
    spark standalone zookeeper HA部署方式
    用NAN简化Google V8 JS引擎的扩展
    在Android上使用Google V8 JS 引擎
    数据可视化工具zeppelin安装
    kafka0.8.2以下版本删除topic
    kafka迁移数据目录
    scala2.10.x case classes cannot have more than 22 parameters
  • 原文地址:https://www.cnblogs.com/lolybj/p/6476917.html
Copyright © 2011-2022 走看看