Bill(bill)
【问题描述】
大家都知道,高三的同学很辛苦,需要补充很多营养。但是由于CZYZ高三教室在 4楼和5楼,而高一教室在 1楼和2楼,所以导致高三同学总是很难到想吃的东西。又由于D,G,Z的动作总是很慢,所以想吃到不错的午餐更是艰难。
所以自从不用上课,X 就承担下了代购午餐的任务。但是由于 X 不上晚自习,不能代购晚餐,所以大家商议决定每周轮流留一张饭卡给X。
可是计划赶不上变化,期间出现了忘换饭卡之类的一系列问题,导致了账目的混乱,于是X又承担下了记录账目的任务。
每天被账目搞得一团糟的X 想请你帮她写一个程序,来清楚地记账。
【输入格式】
第 1行一个整数 n(0<n≤10000), 表示需要记录账目天数。
第 2至n行每行两个字母(只含D,G,Z),表示前一个同学欠后一个同学一顿饭,字
母之间有一个空格。
【输出格式】
共 3行,每行一个字母和一个数字,之间有一个空格,行末无空格。
第 1行D x1
第 2行G x2
第 3行Z x3
Xi 为正数是表示该同学欠了别人 xi 顿;0 表示该同学既不欠人,也不被欠;负数表示
该同学被欠xi顿。
【样例输入】
5
D G
G D
G Z
D G
D Z
【样例输出】
D 2
G 0
Z -2
慢慢判断,不着急。
上代码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#include<bits/stdc++.h>
using namespace std;
int n,d,g,z;
char c1,c2;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>c1>>c2;
if(c1=='D') d++;
else if(c1=='G') g++;
else if(c1=='Z') z++;
if(c2=='D') d--;
else if(c2=='G') g--;
else if(c2=='Z') z--;
}
cout<<'D'<<' '<<d<<endl;
cout<<'G'<<' '<<g<<endl;
cout<<'Z'<<' '<<z;
return 0;
}
欢迎参考