计票统计
来源:互联网 发布:中国网络的发展历程 编辑:程序博客网 时间:2024/06/05 12:41
#include <iostream>#include <string>/* *采用两个数组分别保存候选人及其对应票数 */using namespace std;string s1,s2,s3;int main(){ string input,candidate[100]; int count[100] = {0}, k = 0, num, useless = 0,flag = 1; while(flag){ getline(cin,input); if(input.substr(0,12) == "addCandidate"){ candidate[k++] = input.substr(13); } if(input.substr(0,4) == "vote"){ s2 = input.substr(5); num = 0; for(int i = 0; i < k; i++){ if(s2 == candidate[i]){ count[i]++; num = 1; } } if(num == 0 ) useless++; } if(input == "getVoteResult"){ for(int j=0; j < k; j++){ cout<<candidate[j]<<" "<<count[j]<<endl; } cout<<useless; flag = 0; } } return 0;}
采用STL容器中的map
#include <iostream>#include <map>#include <string>/* *采用了C++中的STL容器map,这样处理更方便简洁 */using namespace std;int main(){ string input,s; int useless = 0; map<string,int> cnt; while(getline(cin,input)){ if(input.substr(0,12) == "addCandidate"){ cnt[input.substr(13)] = 0; //每个候选人初始票数为0 } if(input.substr(0,4) == "vote"){ s = input.substr(5); //截取字符串:从input[5]开始知道input的结尾,如果输入为 "vote xx1",则截取的字符串为"xx1",即为候选人的名字 if(cnt.count(s)) //如果候选人存在,则对应票数+1 cnt[s]++; //map可以像数组一样使用,事实上map也称为"关联数组" else useless++; //候选人不存在则无效票数+1 } if(input == "getVoteResult"){ map<string,int>::iterator it; for(it = cnt.begin(); it != cnt.end(); it++) cout<< it->first << " " << it->second << endl; cout<<useless; return 0; } } return 0;}
0 0
- 计票统计
- 计票统计
- 【华为oj】计票统计
- 计票
- 华为2014机试样题1: 计票统计 java实现
- 【华为OJ】计票系统
- 一个计票程序的设计
- PHP 简单计票程序(作业)
- 我写的一个简单触发器,实现计票功能
- 统计
- 统计
- 统计
- 统计
- 统计
- 统计
- 统计
- 统计
- 统计
- java webservice实例教程
- hdu 4355 Party All the Time 典型三分
- 【leetCode】Search a 2D Matrix
- [Web3.0]什么是Web3.0/时代
- Hdu 4609 FFT
- 计票统计
- HDU 3452 Bonsai(最小割)
- Hibernate学习(7)关系映射
- 黑马程序员——java中面向对象基础
- Steps
- Java 基础
- Android ListView工作原理完全解析
- Hibernate学习(5)数据查询
- 浅析Android Camera开发中的三个尺寸和三种变形 (贡献一个自适配Picturesize和Previewsize的工具类)