题目一:[编程题] 单词接龙

拉姆刚开始学习英文单词,对单词排序很感兴趣。
如果给拉姆一组单词,他能够迅速确定是否可以将这些单词排列在一个列表中,使得该列表中任何单词的首字母与前一单词的为字母相同。
你能编写一个程序来帮助拉姆进行判断吗?
输入描述:
输入包含多组测试数据。
对于每组测试数据,第一行为一个正整数n,代表有n个单词。
然后有n个字符串,代表n个单词。
保证:
2<=n<=200,每个单词长度大于1且小于等于10,且所有单词都是由小写字母组成。
输出描述:
对于每组数据,输出”Yes”或”No”
输入例子:
3
abc
cdefg
ghijkl
4
abc
cdef
fghijk
xyz
输出例子:
Yes
No

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;int main()
{int num;while(cin>>num){string str[200];int j;int flag=0;char head[200],tail[200];for(j=0;j<num;j++){cin>>str[j];} sort(str,str+num);for(j=0;j<num;j++){int len = str[j].length();  head[j]=str[j][0];tail[j]=str[j][len-1];}for(j=1;j<num;j++){if(head[j]!=tail[j-1]){flag=1;break;}}if(flag==0){cout<<"Yes"<<endl;}else{cout<<"No"<<endl;}}return 0;
}

题目二:[编程题] 页面调度算法

在计算机中,页式虚拟存储器实现的一个难点是设计页面调度(置换)算法。其中一种实现方式是FIFO算法。
FIFO算法根据页面进入内存的时间先后选择淘汰页面,先进入内存的页面先淘汰,后进入内存的后淘汰。
假设Cache的大小为2,有5个页面请求,分别为 2 1 2 3 1,则Cache的状态转换为:(2)->(2,1)->(2,1)->(1,3)->(1,3),其中第1,2,4次缺页,总缺页次数为3。
现在给出Cache的大小n和m个页面请求,请算出缺页数
输入描述:
输入包含多组测试数据。
对于每组测试数据,第一行是整数n,第二行是整数m。
然后有m个整数,代表请求页编号。
保证:
2<=n<=20,1<=m<=100,1<=页编号<=200.
输出描述:
对于每组数据,输出一个整数,代表缺页数
输入例子:
2
5
2
1
2
3
1

输出例子:
3

#include <iostream>
#include <string>using namespace std;//若page在cache中返回1,否则返回0
int findPage(int page,int cache[],int len)
{int flag=0;for(int i=0;i<len;i++){if(cache[i] == page){flag=1;break;}   }   if(flag==1){return 1;}else{return 0;}
}//首先将1~len-1位置前移一个位置,将page插入到最后一个位置,表明顺序
void insertPageIntoCache(int page,int cache[],int len)
{for(int i=1;i<len;i++){cache[i-1]=cache[i];    } cache[len-1]=page;
} int main()
{int cacheSize;int pageNum;while(cin>>cacheSize>>pageNum){int i;int j;long int missingPage=0;int cache[cacheSize];int page[pageNum];//对cache初始化,每个元素初始化为0 for(i=0;i<cacheSize;i++){cache[i]=0;}//一次输入页号 for(i=0;i<pageNum;i++){cin>>page[i];}for(i=0;i<pageNum;i++){if(findPage(page[i],cache,cacheSize) == 0){insertPageIntoCache(page[i],cache,cacheSize);missingPage++;               }       }cout<<missingPage; }return 0;
}

题目三:[编程题] 进程调度算法

短作业优先(SJF, Shortest Job First)又称为“短进程优先”SPN(Shortest Process Next);是对FCFS算法的改进,其目标是减少平均周转时间。
短作业优先调度算法基于这样一种思想:
运行时间短的优先调度;
如果运行时间相同则调度最先发起请求的进程。
PS:本题题面描述有误,但原题如此,不宜修改,实际优先级如下:
1)接到任务的时间;
2) 如果接收时间相同则调度 运行时间最短的任务。
等待时间:一个进程从发起请求到开始执行的时间间隔。
现在有n个进程请求cpu,每个进程用一个二元组表示:(p,q),p代表该进程发起请求的时间,p代表需要占用cpu的时间。
请计算n个进程的平均等待时间。
输入描述:
输入包含多组测试数据。
对于每组测试数据,第一行为一个整数n。
然后有n行,每行两个整数,代表上述的二元组(p,q).
保证:
2<=n<=2000,1<=p<=300,1<=q<=100.
输出描述:
对于每组数据,输出一个浮点数,代表平均等待时间,请保留4位有效数字
输入例子:
4
1 4
1 3
1 5
2 1
输出例子:
5.2500 ##

#include <iostream>
#include <algorithm>
#include <stdio.h>using namespace std;int main()
{int n;while(cin>>n){pair<int,int> items[n];int data1,data2;int i;float avgWaitTime;for(i=0; i<n; i++){cin>>data1>>data2;items[i]=make_pair(data1,data2);  //创建pair }sort(items,items+n); //对pair进行排序 int runTime=items[0].first+items[0].second;float waitTime=0;for(i=1; i<n; i++){waitTime+=runTime-items[i].first;runTime+=items[i].second;//  cout<<waitTime<<" "<<runTime<<endl;//cout<<items[i].first<<" "<<items[i].second<<endl;}avgWaitTime=waitTime/n;printf("%.4f",avgWaitTime);//cout<<avgWaitTime<<endl;}return 0;
}

2017百度实习生招聘算法题相关推荐

  1. 2017百度实习生招聘编程题

    一: 度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同.度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少?  输入描述: 首先输入一个正整数N(N <= 50),接 ...

  2. 网易2019实习生招聘算法题(一)

    网易2019实习生招聘算法题(一) 题目 为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬. 牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作. 牛牛的小伙伴太多了,于是 ...

  3. 2017百度实习生招聘笔试真题编程题集合

    1,买帽子 AC代码如下: import java.util.HashSet; import java.util.Scanner; import java.util.Set; import java. ...

  4. 2017百度校园招聘编程题

    题目大概为输入n个敏感词汇和一个文本串,在文本串中出现敏感词汇的地方用'*'替代掉,输出替换后的文本串. 思路:直接kmp匹配出现敏感词的地方,用一个中间数组标记.唯一的陷阱就是不区分大小写,所以用k ...

  5. 2011百度实习生招聘笔试试题---软件测试—测试方向(BJ)

    2011百度实习生招聘笔试试题---软件测试-测试方向(BJ) 来源: 周广陵的日志 第一大题  简答题 1.extern"C"{}是什么,它能起到什么作用? 2.介绍两种经典设计 ...

  6. 百度实习生招聘的一道大数据处理题目(上)

    题目为:两个200G大小的文件A和B,AB文件里内容均为无序的一行一个正整数字(不超过2^63),请设计方案,输出两个文件中均出现过的数字,使用一台内存不超过16G.磁盘充足的机器.方案中指明使用ja ...

  7. 网易2019实习生招聘编程题集合

    前言 利用周末时间做了这套网易2019实习生招聘编程题,链接如下: 题目链接 成绩 先来看一下博主的成绩,打了67分,完全做对了4道题,另外的4道题中1道题完成了80%,1道题完成了30%.评价一下就 ...

  8. 网易2019实习生招聘编程题集合 矩形重叠

    网易2019实习生招聘编程题 矩形重叠 题目链接:https://www.nowcoder.com/test/9763997/summary [编程题] 矩形重叠 时间限制:1秒 空间限制:32768 ...

  9. 2017春季实习生招聘阿里面试题(一)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/60875729冷血之心的博客) 2017春季实习生招聘阿里面试题(二 ...

最新文章

  1. 如何成功地在亚洲植入敏捷和DevOps
  2. Mysql的“Table ‘mysql.servers‘ doesn‘t exist”的解决方法
  3. 在Java中如何高效的判断数组中是否包含某个元素
  4. linux下A免密码登录B
  5. laravel框架制作缩略图和水印
  6. cad动态块制作翻转_定制橱柜家具中CAD门型动态块制作方式图文讲解加视频
  7. 平行驾驶与平行交通:从智能出行到智慧城市
  8. python批量下载静态页面_Python selenium如何打包静态网页并下载
  9. ssa/ass字幕格式全解析
  10. Nick Szabo:可信任计算的黎明
  11. 无限维乘积空间(彼此独立)的测度(完)
  12. TestFlight测试步骤
  13. CentOS 7 断电分区表丢失解决方法
  14. 特殊字符在英语中的读法
  15. tensorflow实现高斯模糊
  16. PhotonServer教程《五》
  17. 超详细双系统安装指南
  18. JFinal配置说明
  19. 智能世界2030八大展望
  20. 游戏开发——孤岛算法实现SLG游戏大世界多类型地表边缘拼接效果

热门文章

  1. 可视化数据结构的网站
  2. STM32开发(11)----CubeMX配置独立看门狗(IWDG)
  3. DIR-645远程命令执行漏洞
  4. 传统IDC部署网站(二)
  5. android 图片淡入,Android使用ImageView淡入和淡出
  6. 基于AI视觉技术构建柔性生产数字化车间
  7. grread使用例子 lisp_AutoLISP从入门到精通初级教程(新手必备);
  8. wordpress一次性删除草稿和回收站文章代码
  9. C语言从入门到精通——进阶6 C语言文件操作
  10. 设计一下类似SpringIoC的注入工具~Lind.DI