CF43A Football 题解

这道题只是处理有一小点麻烦,就是一个字符串+模拟。

我用的是最最朴素的方法了,dalao勿喷。

先定义三个字符串(不是字符数组!),前两个用于输出判断(没错!就是这样!),最后一个才是输入用的。

再定义两个整型的变量,用于保存进球数。

哎,算了,讲的太麻烦,在代码里讲的更清楚。

$code$

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <string>
using namespace std;
string str1, str2;
string goal; //三个字符串
int n, score1 = 0, score2 = 0;//n和保存进球数的变量
void print();
int main() {
    scanf("%d", &n);
    cin >> goal;
    score1 ++;
    str1 = goal;//一进去第一个进球就默认为是第一个球队进的球,将这个球队的名字存放到str1里。输出的时候用
    for(int i = 2; i <= n; i ++) { //所以现在for循环就从2开始循环了
        cin >> goal; //再输入
        if(goal != str1) {
            score2 ++;
            str2 = goal;
        }
        else {
            score1 ++;
            str1 = goal;
        }
        //上面是判断进球的球队是1号球队还是2号球队,并将进球球队加1分
    }
    print(); //输出函数,当然你可以直接在主函数里写
    return 0;
}
void print() {
    if(score1 > score2) cout << str1;
    else cout << str2;
    //输出得分高的那一队
}
posted @ 2018-08-28 22:04  Aehnuwx  阅读(192)  评论(0编辑  收藏  举报