美文网首页程序员互联网科技数据结构和算法分析
2010北京市小学生程序设计友谊赛详细答案

2010北京市小学生程序设计友谊赛详细答案

作者: 海天一树X | 来源:发表于2019-01-01 20:46 被阅读78次

    第1题

    #include <iostream>
    using namespace std;
    
    int main()
    {
        int a, b;
        cin >> a >> b;
        cout << a * b << endl;
    
        return 0;
    }
    

    第2题

    分析:
    以下面的数据为例:

    3 
    1 1 1 1 1
    2 2 2 2 2
    3 3 3 3 3
    

    对应关系:

    班级编号 总力量
    1班 5
    2班 10
    3班 15

    按总力量排序后

    班级编号 总力量
    3班 15
    2班 10
    1班 5

    1班,位于第3行,所以是第3名;2班位于第2行,所以是第2名;3班,位于第1行,所以是第1名。输出结果为3 2 1。

    #include <iostream>
    using namespace std;
    
    int main()
    {
        int n;
        cin >> n;
        int a, b, c, d, e;
        int total[11], classNo[11];//总力量和班级编号
        for(int i = 1; i <= n; i++)
        {
            cin >> a >> b >> c >> d >> e;
            total[i] = a + b + c + d + e;
            classNo[i] = i;
        }
    
        for(int i = 1; i < n; i++)
        {
            for(int j = i + 1; j <= n; j++)
            {
                if(total[i] < total[j])
                {
                    swap(total[i], total[j]);
                    swap(classNo[i], classNo[j]);
                }
            }
        }
    
        for(int cls = 1; cls <= n; cls++)
        {
            for(int row = 1; row <= n; row++)
            {
                //第row行的班级编程是cls
                if(classNo[row] == cls)
                {
                    cout << row << ' ';
                }
            }
        }
        cout << endl;
    
        return 0;
    }
    

    第3题

    #include <iostream>
    using namespace std;
    
    int main()
    {
        string s[10], t;
        string tmp;
        int pos = 0;
    
        do
        {
            cin >> tmp;
            s[pos] = tmp;
            pos++;
        }while('.' != tmp[tmp.size() - 1]);
    
        cin >> t;
        int cnt = 0;
        for(int i = 0; i < pos; i++)
        {
            if(t ==s[i])
            {
                cnt++;
            }
        }
    
        cout << cnt << endl;
    
        return 0;
    }
    

    少儿编程答疑、算法答疑请加微信307591841或QQ307591841


    公众号.jpg

    相关文章

      网友评论

        本文标题:2010北京市小学生程序设计友谊赛详细答案

        本文链接:https://www.haomeiwen.com/subject/tfjolqtx.html