2016 阿里校招研发算法题 9.9

题目大意:

输入一个字符串流,里面有数字和非数字,非数字将数字隔开了,要找出,出现次数最多的数字。

思路:

先将所有非数字用统一字符替换,然后找出数字,需要判断下一个字符是不是数字,然后将数字存到hashmap里面,出现存在过的数字,hashmap的value+1;最后输出value值最大的数字。

代码:

 1 #include"iostream"
 2 #include"map"
 3 #include"vector"
 4 #include"algorithm"
 5 #define MAX 10000
 6 using namespace std;
 7
 8 char c[MAX];
 9 bool tag;
10 map<int, int> m,msort;
11
12 int main()
13 {
14     while (cin >> c)
15     {
16         tag = false;
17         for (int i = 0; i < strlen(c); i++)
18         {
19             if (c[i] < ‘0‘ || c[i]>‘9‘)
20                 c[i] = ‘*‘;
21             cout << c[i];
22         }
23         cout << endl;
24         for (int i = 0,j=0; i < strlen(c); i++)
25         {
26             int t=0;
27             while (c[i] == ‘*‘)
28                 i++;
29             while (c[i] != ‘*‘&&c[i]!=‘\0‘)
30             {
31                 tag = true;
32                 t += c[i] - ‘0‘;
33
34                 if (c[i + 1] == ‘\0‘)
35                     break;
36
37                 if (c[i + 1] == ‘*‘)
38                     tag = false;
39
40                 if (tag)
41                     t *= 10;
42                 i++;
43             }
44             if (m.count(t))
45             {
46                 m[t]++;
47             }else
48                 m[t] = 1;
49
50             j++;
51         }
52
53         map<int, int>::iterator res = m.begin();
54         for (map<int, int>::iterator iter = m.begin(); iter!=m.end(); iter++)
55         {
56             if (iter->second > res->second)
57                 res = iter;
58
59         }
60         cout << res->first << endl;
61
62         m.clear();
63     }
64     system("pause");
65
66 }
时间: 2024-08-24 22:21:39

2016 阿里校招研发算法题 9.9的相关文章

2016 京东校招研发算法题 9.6

第一题:爬山 思路: 需要判断第一个有效数据,到第一天所能达到的最高高度,和最后一个有效数据到最后一天能达到的最高高度.我这里是用的一个map来存放d,h. AC代码: 1 #include "iostream" 2 #include "map" 3 #define MAX 10000001 4 5 using namespace std; 6 7 map<int, int > mapp; 8 int n, m; 9 10 int solve() 11

2016 百度校招研发算法题 9.12

很简单,直接ac: 1 #include "iostream" 2 3 using namespace std; 4 5 int n, t, tag = 1; 6 int main() 7 { 8 cin >> n; 9 10 if (n % 2 == 1) 11 t = n; 12 else 13 t =n+ 1; 14 15 for (int i = 0; i < t; i++) 16 { 17 cout << n; 18 } 19 cout <

2016阿里校招python研发面试

一面: 面:说说你们学校的主修课程. 学校开的全是尼玛java课,这个我是想了有一会的. 面:看你简历写了会jquery,来问你个简单的jquery问题 :jQuery支不支持css引入. 呵呵 面:你平时使用django框架还是用其他框架. web.py啊 面:那web.py的文件组织格式是怎样的. 全是汗,哪有什么组织格式,瞎鸡巴乱说了一会. 面:你学py多久了,能给我简单介绍一下你的项目么. 巴拉巴拉解释半天. 面:我来问你几个简单的py语法: 1 py 传参数的时候 *代表什么意思,**

2015阿里校招研发工程师笔试题

1.C++内存分配中说法错误的是() A 对于栈来说,生长方向是向上的,也就是向着内存地址增加的方向 //错,对于堆来讲,生长方向是向上的,也就是向着内存地址增加的方向:对于栈来讲,它的生长方向是向下的,是向着内存地址减小的方向增长. B 对于堆 ,大量的new/delete操作会造成内存空间不连续 //对,对于堆来讲,频繁的new/delete势必会造成内存空间的不连续,从而造成大量的碎片,使程序效率降低.对于栈来讲,则不会存在这个问题,因为 //栈是先进后出的队列,他们是如此的一一对应,以至

美团点评2017校招研发offer面经

2017届的校招早早就结束了,抽出时间做个记录. 职位:后台开发工程师 岗位职责: 如果你热爱编程,这里给你平台用代码改变世界: 如果你乐于挑战,这里有用户和商家五花八门的需求和苛刻的系统运行环境在等待着你: 在这里,你可以参与后端模块.数据平台.基础服务和云计算功能的开发工作: 在这里,你还将参与需求定义,确定设计方案并负责最终实现: 你需要对代码质量负责,确保代码正确无误,高效工作,无QA,你的代码你做主! 工作要求: 1. 一句话,会写代码.你可以是本科及以上计算机相关专业的科班出身,也可

牛逼!一行代码居然能解决这么多曾经困扰我半天的算法题

春节假期这么长,干啥最好?当然是折腾一些算法题了,下面给大家讲几道一行代码就能解决的算法题,当然,我相信这些算法题你都做过,不过就算做过,也是可以看一看滴,毕竟,你当初大概率不是一行代码解决的. 学会了一行代码解决,以后遇到面试官问起的话,就可以装逼了. 一.2 的幂次方 问题描述:判断一个整数 n 是否为 2 的幂次方 对于这道题,常规操作是不断这把这个数除以 2,然后判断是否有余数,直到 n 被整除成 1 . 我们可以把 n 拆成二进制看待处理的,如果 n 是 2 的幂次方的话,那么 n 的

java基础算法题

为了提高自己的代码能力和算法能力,我决定每天学习一道算法题,吸收前辈思想. [程序1] TestRabbit.java 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 程序分析:兔子数量的规律为数列:1,1,2,3,5,8,13.....其实就是斐波那契数列  使用递归就可以实现 1 /** 2 * 兔子问题 3 * 2016/5/9 4 * 斐波那契数列求值 5 *题目:古典问题:有一对兔子,

2016华为校招机试记录

3道题,分值100/200/300,都不算难 1.输入一个字符串,输出该字符串按照每个字母与'U'距离的绝对值排序的新字符串(若相同,按照原字符串中的位置关系排列) 核心就是写一个sort的cmp函数,没什么难度 2.续1s:给定一个字符串类型的时间(2016/09/13 13:13:13),输出下一秒的时间 考虑好闰年情况依次进位即可 3.仿自动售货机:给一个字符串(形如p 1,p 5,p 5,b A1,b A3,b A2)和执行前货箱.钱箱的初始状态,p k(1/2/5)表示塞入一张k元纸币

【天池竞赛系列】阿里移动推荐算法思路解析

赛题地址:http://tianchi.aliyun.com/competition/information.htm?raceId=1 登录就可以下载数据 从4月到7月,学习了非常多也收获了非常多 题目就不多说了.一句话表达就是依据过去一个月的行为预測14年12月19号的购买情况. 看题目貌似推荐算法.自然就有队伍想到用协同过滤什么的.当然效果不好. 首先是特征的问题,然后是这是基于行为的相似,不太类似用户和商品类似的ItemCF.UserCF,还有非常多其它的原因.比方我买过一部手机,难道还要