【华为oj】计票统计
问题描述:
请实现接口:
unsigned int AddCandidate (char* pCandidateName);
功能:设置候选人姓名
输入: char* pCandidateName 候选人姓名
输出:无
返回:输入值非法返回0,已经添加过返回0 ,添加成功返回1
Void Vote(char* pCandidateName);
功能:投票
输入: char* pCandidateName 候选人姓名
输出:无
返回:无
unsigned int GetVoteResult (char* pCandidateName);
功能:获取候选人的票数。如果传入为空指针,返回无效的票数,同时说明本次投票活动结束,释放资源
输入: char* pCandidateName 候选人姓名。当输入一个空指针时,返回无效的票数
输出:无
返回:该候选人获取的票数
void Clear()
// 功能:清除投票结果,释放所有资源
// 输入:
// 输出:无
// 返回
知识点: 查找
题目来源: 内部整理
练习阶段: 初级
运行时间限制: 10Sec
内存限制: 128MByte
输入:
输入候选人的人数,第二行输入候选人的名字,第三行输入投票人的人数,第四行输入投票。
输出:
每行输出候选人的名字和得票数量。
样例输入: 4
A B C D
8
A B C D E F G H
样例输出: A : 1
B : 1
C : 1
D : 1
Invalid : 4
代码:
#include <iostream>
#include <string>
using namespace std;
struct vote
{string name;int count;
};int main()
{int num=0;int votenum=0;string namein;string votename[100];struct vote vt[100];int invalid=0;int sum=0;cin>>num;int i=0,j=0;for(i=0;i<num;i++){cin>>namein;vt[i].name=namein;vt[i].count=0;}cin>>votenum;for(i=0;i<votenum;i++){cin>>votename[i];}for(i=0;i<votenum;i++){for(j=0;j<num;j++){if(votename[i]==vt[j].name){vt[j].count++;//sum+=vt[j].count;}}}for(j=0;j<num;j++){sum+=vt[j].count;}invalid=votenum-sum;for(i=0;i<num;i++)cout<<vt[i].name<<" : "<<vt[i].count<<endl;cout<<"Invalid"<<" : "<<invalid<<endl;return 0;
}
【华为oj】计票统计相关推荐
- 循环相乘取整法C语言,华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...
题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...
- 【华为OJ】【042-矩阵乘法】
[华为OJ][算法总篇章] [华为OJ][042-矩阵乘法] [工程下载] 题目描述 如果A是个x行y列的矩阵,B是个y行z列的矩阵,把A和B相乘,其结果将是另一个x行z列的矩阵C. 这个矩阵的每个元 ...
- 【华为OJ】【067-求最小公倍数】
[华为OJ][算法总篇章] [华为OJ][067-求最小公倍数] [工程下载] 题目描述 正整数A和正整数B 的最小公倍数是指 能被A和B整除的最小的正整数值,设计一个算法,求输入A和B的最小公倍数. ...
- C语言无符号双字节乘法,华为OJ机试标题:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...
华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘) 题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出 ...
- 华为OJ(MP3光标移动)
描述: MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲.为了简化处理,假设每屏只能显示4首歌曲,光标初始的位置为第1首歌. 现在要实现通过 ...
- 【华为OJ】【099-MP3光标位置】
[华为OJ][算法总篇章] [华为OJ][099-MP3光标位置] [工程下载] 题目描述 MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲 ...
- 【华为OJ】【097-24点游戏算法】
[华为OJ][算法总篇章] [华为OJ][097-24点游戏算法] [工程下载] 题目描述 给出4个1-10的数字,通过加减乘除,得到数字为24就算胜利 输入: 4个1-10的数字.[数字允许重复,测 ...
- 【华为OJ】【107-24点运算】
[华为OJ][算法总篇章] [华为OJ][107-24点运算] [工程下载] 题目描述 计算24点是一种扑克牌益智游戏,随机抽出4张扑克牌,通过加(+),减(-),乘(*), 除(/)四种运算法则计算 ...
- 【华为OJ】【063-字符串分割】
[华为OJ][算法总篇章] [华为OJ][063-字符串分割] [工程下载] 题目描述 连续输入字符串(输出次数为N,字符串长度小于100),请按长度为8拆分每个字符串后输出到新的字符串数组, 长度不 ...
- java oj题及答案_华为OJ答案(java版)题目2
华为OJ&答案(java版) 1. 功能:等差数列 2,5,8,11,14.... 输入:正整数N >0 输出:求等差数列前N项和 返回:转换成功返回 0 ,非法输入与异常返回-1 pu ...
最新文章
- Spark和Hadoop,孰优孰劣?
- OpenGL中glTranslate*(),glRotation*(),glScale*()函数的用法(*是参数数据类型)
- 反汇编最基础知识(段寄存器和寄存器的说明)
- kernel shell bash简介
- 使用randomaccessfile类将一个文本文件中的内容逆序输出_Java 中比较常用的知识点:I/O 总结...
- mysql执行语句后回退_MySQL命令学习笔记(八)
- 这个统一了238个机器学习模型R包的参考手册推荐给你
- python中seaborn_python的seaborn模块
- pytorch数据集
- Windows下sqlmap安装方法
- YUV422转RGB并显示于Qlabel
- linux环境下如何重装系统,详细教你linux电脑系统怎么安装
- HDU 5336 BFS
- 知道自己无知才会进步
- docker加载镜像报错 dockerError processing tar file(exit status 1): no space left on device
- html的鼠标手怎么去掉,flex htmlText属性和Label设置鼠标手形状
- 深度解决 SecurityException: User has not given permission to device UsbDevice
- Oracle to_char()函数的用法
- 奥利给 之 【优学院自定义速度】
- 单位跳跃函数,斜坡函数
热门文章
- 数据挖掘竞赛——糖尿病遗传风险检测挑战赛进阶
- MATLAB中对小数进行取整处理
- ROS里程计的学习(odometry) (三)
- MyTest.axf section `.text‘ will not fit in region `Flash30‘
- 嵌入式开发—矩阵键盘原理及程序设计
- UBTC比特联储重要升级,千万别错过
- 跨界融合引尴尬,智能珠宝能向前走远?
- android service layoutinflater,[转]Android LayoutInflater详解
- JavaScript自定义事件--高级技巧
- Android Permission中英对照