zoukankan      html  css  js  c++  java
  • 1585七个小矮人(代码简化)

    描述

    白雪公主经常为七个小矮人讲故事,为了方便,她为这七个小矮人安排了学号,学号分别是 1 至 7 号。有一次,白雪公主又邀请七个小矮人来听她讲故事,但是只来了六个小矮人,那 么缺席的那个小矮人是谁呢?

    输入

    一行,6 个学号,空格分开,表示来听故事的六个小矮人的学号。

    输出

    没来听故事的小矮人的学号。

    输入样例 1 

    3 5 2 1 7 4

    输出样例 1

    6

    输入样例 2 

    7 3 2 4 1 6

    输出样例 2

    5

    这是其实一道很简单的题目,我第一次做这道题时最开始是用数组来计数。
    int a[7]={0};
    循环输入,输入6号就a[6-1]++;最后在循环找出为0的元素,即没来的小矮人。
    代码如下:
     1 #include<iostream>
     2 using namespace std;
     3 int main()
     4 { 
     5     int a[7]={0},n;
     6     for(int i=1;i<=6;i++)
     7     {
     8         cin>>n;
     9         a[n-1]++;
    10     }
    11     for(int i=0;i<=6;i++)
    12     {
    13         if(a[i]==0) cout<<i+1;
    14     }
    15     return 0;
    16 }

    做完之后才发现,这道题用数组其实是大炮打蚊子了。

    可以改进代码,累加输入的6个数,然后用1+2+3+4…+7=28,减去累加的数,就是没有输入的那个数。

    代码如下:

     1 #include<iostream>
     2 using namespace std;
     3 int main()
     4 { 
     5     int s=0,a;
     6     for(int i=1;i<=6;i++)
     7     {
     8         cin>>a;
     9         s+=a;
    10     }
    11     cout<<28-s;
    12     return 0;
    13 }
     
  • 相关阅读:
    Mat
    分治法-最近点对问题
    动态规划作业-最长公共子序列问题
    动态规划作业-多段图的最短路径问题
    OpenCV+VisualStudion2017配置
    R入门(二)-对象以及它们的模式和属性
    Big number
    R入门(一)
    Spring-aop
    Spring-ioc
  • 原文地址:https://www.cnblogs.com/cyk20081108/p/13974463.html
Copyright © 2011-2022 走看看