找最大重复次数的数和重复次数(C++ Pair)
Problem A: 第一集 你好,世界冠军
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 265 Solved: 50
[Submit][Status][Web Board]
Description
“我宣布,第十届国际程序设计竞赛现在开始!本次比赛时间为9点到14点……”伴随着大赛主席的宣布,一场体现现今最高编程水平的大赛正式拉开帷幕。
Input
输入包括多组测试数据
Output
对于每组测试数据输出2个数,分别表示出现最多次的数和它出现的次数。(如果有多个同样次数的数,输出最小的那个)
Sample Input
5
1 2 1 2 3
Sample Output
1 2
/***********************************************************************************/
水题,用这题目来尝试下Pair二元组的使用二元,可以忽略不看
包含:#include<utility> 且 algorithm 和 map 也包含了这个头文件
pair <type,type>Sum[];/*定义二元组的数组*/
Sum.first;/*第一个元素,自己赋予含义即可*/
Sum.second;/*第一个元素,自己赋予含义即可*/
pair <pair<int ,int>a,int>SUM[];/*二元组可以嵌套使用*/
SUM.pair.first;/*第一个元素,自己赋予含义即可*/
SUM.pair.second;/*第一个元素,自己赋予含义即可*/
/***********************************************************************************/
#include <algorithm>
#include <iostream>
#include <stack>
#include <stdio.h>
#include <string.h>
using namespace std;
int MAX_NUM,Max;
void Judge(pair<int,int>Sum) /*判断结果*/
{
if(Max<=Sum.second)
{
MAX_NUM=Sum.first;
Max=Sum.second;
}
return ;
}
int main()
{
SUM.pair.
int T,sign;
int Num[];
while(scanf("%d",&T)!=EOF)
{
sign=-;Max=;
pair <int,int>Sum[]; /*定义二元组,first记录点的大小,second记录点的次数*/
for(int i=;i<T;i++)
scanf("%d",&Num[i]); /*输入每一个点*/
sort(Num,Num+T); /*排序,升序*/
for(int i=T-;i>=;i--)
{
if(i==T-||(Sum[sign].first!=Num[i]))/*点不一样,进行判断和记录新的一个点*/
{
if(sign>=)
Judge(Sum[sign]); /*判断*/
sign++;
Sum[sign].first=Num[i]; /*对下个记录的点初始化*/
Sum[sign].second=; /*对下个记录的点初始化*/
}
else
{
Sum[sign].second++; /*点一样,记录的点数加1*/
}
if(i==)Judge(Sum[sign]); /*需要特判*/
}
printf("%d %d\n",MAX_NUM,Max); /*输出出现的次数最多的点的大小和其所出现的次数*/
}
return ;
}
找最大重复次数的数和重复次数(C++ Pair)的更多相关文章
- TZOJ3043: 取个标题好难 最长的出现次数>=k的不重复子串长度
3043: 取个标题好难 Time Limit(Common/Java):6000MS/18000MS Memory Limit:65536KByteTotal Submit: 17 ...
- 【POJ 3693】Maximum repetition substring 重复次数最多的连续重复子串
后缀数组的论文里的例题,论文里的题解并没有看懂,,, 求一个重复次数最多的连续重复子串,又因为要找最靠前的,所以扫的时候记录最大的重复次数为$ans$,扫完后再后从头暴力扫到尾找重复次数为$ans$的 ...
- Openjudge-计算概论(A)-第二个重复出现的数
描述: 给定一个正整数数组(元素的值都大于零),输出数组中第二个重复出现的正整数,如果没有,则输出字符串"NOT EXIST". 输入第一行为整数m,表示有m组数据.其后每组数据分 ...
- 【poj3693-重复次数最多的连续重复子串】后缀数组
题意:给定一个串,长度<=10^5,求它重复次数最多的连续重复子串(输出字典序最小的那个). 例如ccabcabc,答案就是abcabc 一开始没想清楚,结果调了好久. 原理: 按照L划分,因为 ...
- Java查找数组重复元素,并打印重复元素、重复次数、重复元素位置
面试题查找重复元素并打印重复次数和重复位置,一顿懵逼,回来死磕写下来,打印指定重复次数和最大次数,其他在此基础上可以再更新 package sort; import org.testng.annota ...
- spoj687 后缀数组重复次数最多的连续重复子串
REPEATS - Repeats no tags A string s is called an (k,l)-repeat if s is obtained by concatenating k& ...
- 找出字符串中第一个不重复的字符(JavaScript实现)
如题~ 此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达. //找出字符串中第一个不重复的字符 // firstUniqueChar("vdctdvc"); --& ...
- OpenJudge计算概论-第二个重复出现的数
/*======================================================================== 第二个重复出现的数 总时间限制: 1000ms 内 ...
- POJ-3693-Maximum repetition substring(后缀数组-重复次数最多的连续重复子串)
题意: 给出一个串,求重复次数最多的连续重复子串 分析: 比较容易理解的部分就是枚举长度为L,然后看长度为L的字符串最多连续出现几次. 既然长度为L的串重复出现,那么str[0],str[l],str ...
随机推荐
- directive(指令里的)的compile,pre-link,post-link,link,transclude
The nitty-gritty of compile and link functions inside AngularJS directives The nitty-gritty of comp ...
- Mongo组合索引优化
包含了等值测试.排序及范围过滤查询的索引建立方法: 1. 等值测试 在索引中加入所有需要做等值测试的字段,任意顺序. 2. 排序字段(多排序字段的升/降序问题 ) 根据查询的顺序有序的向索引中添加字段 ...
- 常用Oracle分析函数详解 [http://www.cnblogs.com/benio/archive/2011/06/01/2066106.html]
学习步骤:1. 拥有Oracle EBS demo 环境 或者 PROD 环境2. copy以下代码进 PL/SQL3. 配合解释分析结果4. 如果网页有点乱请复制到TXT中查看 /*假设一个经理 ...
- 第七十八节,CSS3文本效果
CSS3文本效果 一.文本阴影 CSS3提供了text-shadow文本阴影效果,这个属性在之前讲过,只是没有涉及浏览器 支持情况. 浏览器支持情况 text-shadow Opera ...
- input输入框只允许输入数字/ 数字+小数点/ 文字+字母/ 等解决方法
1.只允许输入数字: <input type="text" onkeyup="this.value=this.value.replace(/[^0-9]/g,'') ...
- Ubuntu 14.04 apt源更新
# 14.04 下进 my /etc/apt/sources.list /etc/apt/sources.bak vi /etc/apt/sources.list 从以下源中选择一个 源列表 Trus ...
- 关于Cocos2dx之JS创建项目
环境: cocos2dx -3.10 ndk - r9 sdk 1.进入到指定的项目的目标目录下面去,然后执行cocos new -l js ProjectName 进入对应目录查看:
- ARC 下面可能导致的内存问题
一.ARC相对MRC来说,减轻了程序员的大部分内存管理工作,使用ARC的时候也需要十分清除内存管理的原理,不然可能带来一些很难调试的问题.下面是ARC下面需要注意的一些问题 1)对象互相引用,形成引用 ...
- redis数据类型:lists
redis的list类型其实就是一个每个子元素都是string类型的双向链表. 我们可以通过push,pop操作从链表的头部或者尾部添加删除元素,这样list即可以作为 栈,又可以作为队列. lpus ...
- js 中创建对象
对象是什么 从JavaScript定义上讲对象是无序属性的集合,其属性可以包含基本值.对象或函数.也就是说对象是一组没有特定顺序的属性,每个属性会映射到一个值上,是一组键值对,值可以是数据或对象. 最 ...