【题目链接】

OpenJudge NOI 1.13 42:出书最多

【题目考点】

1. 数组

2. vector

【解题思路】

将作者A~Z转为数字0~25,A对应数字0,B对应数字1,…,Z对应数字25。转换后,第0作者指A,第1作者指B,…,第25作者指Z。

解法1:使用二维数组

设二维数组ct,ct[i]指第i作者的所有作品,是一个一维数组。ct[i][0]为第i作者的作品数量,ct[i][j]为第i作者的第j作品(j从1开始)。
将输入信息保存在ct数组中后,求作品数量ct[i][0]最大的作者i,输出该作者的所有作品。

解法2:使用vector数组

设vector数组v,v[i]指第i作者的所有作品,是一个vector对象。v[i].size()为第i作者的作品数量,v[i][j]为第
i作者的第j作品(j从0开始)。
将输入信息保存在vector数组中后,求作品数量v[i].size()最大的作者i,输出该作者的所有作品。

【题解代码】

解法1:使用二维数组

#include<bits/stdc++.h>
using namespace std;
int ct[26][1005];
int main()
{char s[30];int m, b, p, mxi = 0;scanf("%d", &m);for(int i = 1; i <= m; ++i){scanf("%d %s", &b, s);int len = strlen(s);for(int i = 0; i < len; ++i){p = s[i]-'A';//作者编号 ct[p][++ct[p][0]] = b;//作者p的作品增加一个作品b }}for(int i = 0; i < 26; ++i){if(ct[i][0] > ct[mxi][0])mxi = i;}printf("%c\n%d\n", 'A'+mxi, ct[mxi][0]);for(int i = 1; i <= ct[mxi][0]; ++i)printf("%d\n", ct[mxi][i]);return 0;
}

解法2:使用vector数组

#include<bits/stdc++.h>
using namespace std;
vector<int> v[26];
int main()
{string s;int m, b, mxi = 0;cin >> m;for(int i = 1; i <= m; ++i){cin >> b >> s;for(int i = 0; i < s.length(); ++i)v[s[i]-'A'].push_back(b);}for(int i = 0; i < 26; ++i){if(v[i].size() > v[mxi].size())mxi = i;}cout << char('A'+mxi) << endl << v[mxi].size() << endl;for(int i = 0; i < v[mxi].size(); ++i)cout << v[mxi][i] << endl;return 0;
}

OpenJudge NOI 1.13 42:出书最多相关推荐

  1. 信息学奥赛一本通 1927:【04NOIP普及组】花生采摘 | OpenJudge NOI 1.13 38:花生采摘 | 洛谷 P1086 [NOIP2004 普及组] 花生采摘

    [题目链接] ybt 1927:[04NOIP普及组]花生采摘 OpenJudge NOI 1.13 38:花生采摘 洛谷 P1086 [NOIP2004 普及组] 花生采摘 [题目考点] 1. 模拟 ...

  2. 信息学奥赛一本通 1149:最长单词2 | OpenJudge NOI 1.13 16

    [题目链接] ybt 1149:最长单词2 OpenJudge NOI 1.13 16:最长单词2 [题目考点] 1. 字符串遍历 2. 处理多个字符串 3. while(cin >> - ...

  3. OpenJudge NOI 1.13 11:回文素数

    [题目链接] OpenJudge NOI 1.13 11:回文素数 [题目考点] 1. 函数 2. 质数 3. 回文数 [解题思路] 输入的数字n可以达到9位数字,枚举判断每个数字是否是回文数与质数, ...

  4. OpenJudge NOI 1.13 08:特殊日历计算

    [题目链接] OpenJudge NOI 1.13 08:特殊日历计算 [题目考点] 1- 取模运算 [解题思路] 我们用的是现实日历,题目中设定的是特殊日历,两种历法的一天是一样长的.也就是说两种历 ...

  5. OpenJudge NOI 1.13 19:啤酒厂选址

    [题目链接] OpenJudge NOI 1.13 19:啤酒厂选址 [题目考点] 1. 枚举 [解题思路] 一个有n个数字的环,顺时针标号从0到n-1,顺时针取下一个数字的方法为i = (i+1)% ...

  6. 信息学奥赛一本通 1175:除以13 | OpenJudge NOI 1.13 27:除以13

    [题目链接] ybt 1175:除以13 OpenJudge NOI 1.13 27:除以13 [题目考点] 1. 高精度 考察:高精除低精 高精模低精 高精度计算讲解 [题解代码] 解法1:使用函数 ...

  7. 信息学奥赛一本通 1307:【例1.3】高精度乘法 | 1174:大整数乘法 | OpenJudge NOI 1.13 09:大整数乘法

    [题目链接] ybt 1307:[例1.3]高精度乘法 ybt 1174:大整数乘法 OpenJudge NOI 1.13 09:大整数乘法 [题目考点] 1. 高精度 考察:高精乘高精 高精度计算讲 ...

  8. 信息学奥赛一本通 1413:确定进制 | OpenJudge NOI 1.13 34:确定进制 | OpenJudge NOI 2.1 1973:确定进制

    [题目链接] ybt 1413:确定进制 OpenJudge NOI 1.13 34:确定进制 OpenJudge NOI 2.1 1973:确定进制 注意:两OJ平台上题目条件不同,ybt中:2≤b ...

  9. 信息学奥赛一本通 1412:二进制分类 | OpenJudge NOI 1.13 36:二进制分类

    [题目链接] ybt 1412:二进制分类 OpenJudge NOI 1.13 36:二进制分类 本题为:NOIP1995复赛 普及组 第三题 [题目考点] 1. 数制 2. 函数 [解题思路] 设 ...

  10. 信息学奥赛一本通 1411:区间内的真素数 | OpenJudge NOI 1.13 23:区间内的真素数

    [题目链接] ybt 1411:区间内的真素数 OpenJudge NOI 1.13 23:区间内的真素数 [题目考点] 1. 质数 2. 数字拆分 [解题思路] 设函数判断一个数是否是质数 设函数求 ...

最新文章

  1. Tomcat容器做到自我保护,设置最大连接数(服务限流:tomcat请求数限制)
  2. 09.15,一维数组,冒泡排序
  3. Go Channel 详解
  4. itchat 道歉_人类的“道歉”
  5. 用JQUERY为INPUT的TXT类型赋值及取值操作
  6. NFS网络文件系统服务介绍与实战
  7. 5元的小乌龟吃什么_五月最适合吃这菜,5元一斤,两三天吃一次,鲜嫩正当时好美味...
  8. java通过InputStream读取文件
  9. System类的概述和方法使用
  10. python commands用法_python之commands模块(执行Linux Shell命令)
  11. IOMMU 虚拟IO地址和物理地址相关联
  12. 基于Silverlight4开发的相关工具
  13. spyder安装matplotlib
  14. 基于移动互联网的交互式卫星地面管理终端
  15. 请问最早的计算机语言是什么,最早的计算机语言是什么?
  16. Cropper详细笔记
  17. 【个人喜好诗词之一】前赤壁赋
  18. html a标签鼠标聚焦,html怎么实现鼠标悬停提示A标签内容
  19. html5游戏 遥控器按键,遥控器按键功能说明汇总
  20. C语言算法:冒泡法排序

热门文章

  1. 阿里云Hologres外部表的创建及使用
  2. pytorch实用工具总结(GFLOPs如何计算)
  3. 单片机是什么?51单片机和stm32有什么区别?
  4. 一句话说明白IRQL
  5. Linux下软连接(softlink)和硬连接(hardlink)的区别
  6. 华为路由器没有虚拟服务器,华为路由器如何设置 华为路由器设置方法介绍【详解】...
  7. 微信支付解决多商户平台收款
  8. [渝粤教育] 无锡商业职业技术学院 商务礼仪 参考 资料
  9. 纯CSS实现气泡框和内凹的圆角
  10. 新零售业背景下实体店的经营战略