zoukankan      html  css  js  c++  java
  • 『ACM C++』 PTA 天梯赛练习集L1 | 034-035

      在一个团队里,一群人一起为一件事情努力奋斗的过程,真的很值得享受,真希望我能拥有很多这样的团队。

    ------------------------------------------------L1-034----------------------------------------------------------

    点赞

    微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。

    输入格式:

    输入在第一行给出一个正整数N(≤),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“F1​​FK​​”,其中1,Fi​​(,)是特性标签的编号,我们将所有特性标签从1到1000编号。数字间以空格分隔。

    输出格式:

    统计所有被点赞的博文中最常出现的那个特性标签,在一行中输出它的编号和出现次数,数字间隔1个空格。如果有并列,则输出编号最大的那个。

    输入样例:

    4
    3 889 233 2
    5 100 3 233 2 73
    4 3 73 889 2
    2 233 123

    输出样例:

    233 3

    ------------------------------------------------L1-034----------------------------------------------------------

    注解:水题,主要是把握次数最大项的保存,难度不大

    #include<stdio.h>
    struct max
    {
        int count = 0;
        int pos = -1;
    }m;
    int times,K;
    int temp[99999999];
    int main()
    {
        scanf("%d",&times);
        for(int i = 0;i<times;i++)
        {
            scanf("%d",&K);
            for(int u = 0;u<K;u++)
            {
                int p;
                scanf("%d",&p);
                temp[p]++;
                if(temp[p] > m.count)
                {
                    m.count = temp[p];
                    m.pos = p;
                }
                else if(temp[p] == m.count && p > m.pos)
                {
                    m.count = temp[p];
                    m.pos = p;
                }
            }
        }
        printf("%d %d",m.pos,m.count);
        return 0;
    }

    ------------------------------------------------L1-035----------------------------------------------------------

    情人节

    以上是朋友圈中一奇葩贴:“2月14情人节了,我决定造福大家。第2个赞和第14个赞的,我介绍你俩认识…………咱三吃饭…你俩请…”。现给出此贴下点赞的朋友名单,请你找出那两位要请客的倒霉蛋。

    输入格式:

    输入按照点赞的先后顺序给出不知道多少个点赞的人名,每个人名占一行,为不超过10个英文字母的非空单词,以回车结束。一个英文句点.标志输入的结束,这个符号不算在点赞名单里。

    输出格式:

    根据点赞情况在一行中输出结论:若存在第2个人A和第14个人B,则输出“A and B are inviting you to dinner...”;若只有A没有B,则输出“A is the only one for you...”;若连A都没有,则输出“Momo... No one is for you ...”。

    输入样例1:

    GaoXZh
    Magi
    Einst
    Quark
    LaoLao
    FatMouse
    ZhaShen
    fantacy
    latesum
    SenSen
    QuanQuan
    whatever
    whenever
    Potaty
    hahaha
    .

    输出样例1:

    Magi and Potaty are inviting you to dinner...

    输入样例2:

    LaoLao
    FatMouse
    whoever
    .

    输出样例2:

    FatMouse is the only one for you...

    输入样例3:

    LaoLao
    .

    输出样例3:

    Momo... No one is for you ...

    ------------------------------------------------L1-035----------------------------------------------------------

    注解:难度不大,利用函数strcpy可以巧妙解决:

    #include<stdio.h>
    #include<string.h>
    #include<iostream>
    using namespace std;
    char A[9999];
    char B[9999];
    char temp[99999];
    int i;
    int main()
    {
        for(i = 0;temp[0] != '.';)
        {
            scanf("%s",&temp);
            if(temp[0] == '.') break;
            if(i == 1) strcpy(A,temp);
            else if(i == 13) strcpy(B,temp);
            i++;
        }
        if(i<2) printf("Momo... No one is for you ...
    ");
        else if(i<13) cout<<A<<" is the only one for you...
    ";
        else if(i>=13) cout<<A<<" and "<<B<<" are inviting you to dinner...
    ";
        return 0;
    }

    注:如果有更好的解法,真心希望您能够评论留言贴上您的代码呢~互相帮助互相鼓励才能成长鸭~~

  • 相关阅读:
    poj 1466 Girls and Boys (最大独立集)
    hdu 3667 Transportation (拆边 ,最小费用流)
    poj 3487 The Stable Marriage Problem (稳定婚姻 GaleShapley算法 )
    ZOJ Problem Set 1239 (最小点覆盖 )
    poj 2060 Taxi Cab Scheme (最小路径覆盖)
    poj 2226 Muddy Fields (最小点覆盖)
    hdu 1281 棋盘游戏 (二分图)
    hdu 3666 THE MATRIX PROBLEM (差分约束)
    poj 1325 Machine Schedule (最小点覆盖)
    ORACLE导入导出
  • 原文地址:https://www.cnblogs.com/winniy/p/10540208.html
Copyright © 2011-2022 走看看