• 1056 组合数的和


    给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。

    输入格式:

    输入在第一行中给出 N(1 < N < 10),随后一行给出 N 个不同的非 0 个位数字。数字间以空格分隔。

    输出格式:

    输出所有可能组合出来的2位数字的和。

    输入样例:

    3
    2 8 5
    

    输出样例:

    330
    
     
    思路:考虑到是两位数的组合,直接两层循环暴力解决,当然正反都要组合......
     
     1 #include<stdio.h>
     2 #include<math.h>
     3 int main()
     4 {
     5     int N;
     6     scanf("%d",&N);
     7     int num[10];
     8     for(int i = 0;i< N;i++)
     9     scanf("%d",&num[i]);
    10     int sum = 0;
    11     for(int i = 0;i< N;i++)
    12     {
    13         for(int j= i + 1;j< N;j++)
    14         {
    15             sum = sum + (num[i]*10 + num[j]);
    16         }
    17     }
    18     for(int i = N-1;i >= 0;i--)
    19     {
    20         for(int j = i -1;j >= 0;j--)
    21         {
    22             sum =sum + (num[i]*10 + num[j]);
    23         }
    24     }
    25     printf("%d",sum);
    26     return 0;
    27 }
    大佬见笑,,
  • 相关阅读:
    P1991 无线通讯网
    P1155 双栈排序
    P2024 [NOI2001]食物链
    Bellman-Ford&&SPFA算法详解
    P1387 最大正方形
    NOIP2009 靶型数独
    P3812 【模板】线性基
    Misunderstood-Missing-逆向DP
    P3389 【模板】高斯消元法
    牛客练习赛37
  • 原文地址:https://www.cnblogs.com/xwl3109377858/p/10479462.html
Copyright © 2020-2023  润新知