今年的三月二十八号,我有幸参加了百田公司在中南大学的宣讲会,并参加了笔试。虽然结果不是很令人满意,但通过这次面试提醒了我——程序高手必须重视算法,数据结构,操作系统的学习。这重拾了我对于算法的热情,故为避免遗忘特将题目记录如下。

1.给出一个日期,计算其是该年的第几天

int SumDay(int year, int month, int day)
{int bMonth, sumDay;bool mYear = year%4;int i = mYear*1;bMonth = month/2;switch( month ){case 1:case 2:sumDay = 31 * bMonth + day ; //一二月另行计算;break;default:sumDay = bMonth * 31 + (bMonth -1)* 30 + (month%2) * 30 - 1 - mYear*1 + day;break;}return sumDay;
}

2.给定一个算式计算其值:如:输入“2 3 4 * +” 计算如下:(3 * 4)+2
这个记不清楚了,大意是如此的。

int main(int argc, char *argv[])
{char str[] = "243+*";int num[4];int top = 0 ;int lNum,rNum,result;for(int i=0;str[i]!='\0';i++){int j=str[i] - '0';if(str[i] >'0'&&str[i]<='9'){num[top]=str[i]-'0';top++;}else{lNum = num[top-2];rNum = num[top-1] ;switch(str[i]){case '+':result = lNum + rNum;break;case '-':result = lNum - rNum;break;case '*':result = lNum * rNum;break;case '/':result = lNum / rNum;break;}top--;num[top-1]=result;}}cout<<num[top-1]<<endl;
}

3.棋牌规则如下,三个相同或者连续三个成为胡,两个相同称为门,四个相同称为坎,胡牌时只能是多个胡和一个门,问如果给定牌,计算其能胡牌的牌:如:

给定“2 3 4 5 6 9 9” 能胡的牌是:1 4 7

这里的胡和坎以及门是我自己根据记忆命名的,但大意是如此,个人认为这个是三个算法题目里面最难的。

#include<iostream>
using namespace std;bool IsCanHu(int type[],int i);
bool IsSeries(int type[],int length);
int * CopeArry(int source[], int length);int main(int argc, char *argv[])
{int Puk[10]={2,3,4,4,5,6,8,9,9,9};int typePuk[14]={0};int hu[13]={0};int top=0;int i=0;for(i=0;i<10;i++){typePuk[Puk[i]]++;}for(i=1;i<=13;i++){if(typePuk[i]<4){int *temp=CopeArry(typePuk,14);if(IsCanHu(temp,i)){hu[top++]=i;};}}for(int j=0;hu[j];j++){cout<<hu[j]<<" ";}cout<<endl;return 0;
}int * CopeArry(int source[], int length)
{int * dest = new int [length];for(int i=0;i<length;i++){dest[i]=source[i];}return dest;
}bool IsCanHu(int * typePuk,int num)
{bool isCanHu=false;typePuk[num]++;for(int i=1;i<=13&&!isCanHu;i++){if(typePuk[i]>=2){typePuk[i]-=2;int *temp=CopeArry(typePuk,14);isCanHu = IsSeries(temp,13);if(!isCanHu){typePuk[i]+=2;}}}return isCanHu;
}bool IsSeries(int * typePuk, int length)
{int i=0,k=1,j=1;bool isSeries=true;do{i=0;j=0;while(!(typePuk[++i]>0)&&i<length);k=i;if(k<length-2){while(j<3){if(typePuk[k+j]>=1){typePuk[k+j]-=1;}else{isSeries=false;}j++;}}}while(k<length-2);return isSeries;
}

上面的这些算法是我在考完之后不甘心自己的失败写的,通过编译对于{2,4,5,6,8,9,9}和{2,3,4,4,5,6,8,9,9,9}是正确的,其他的数据没有测试,另外由于很久没写C++程序了,代码的简洁度就不是很好。

转载于:https://www.cnblogs.com/quandeboke/archive/2013/03/27/2984336.html

应聘经验——百田公司面试题记忆相关推荐

  1. 百田公司:与神策数据携手,筑就爆款游戏背后的 4 个数据砝码

    爆款游戏的背后隐藏着什么呢? 对人性的洞察和对数据的敏锐. 具备对人性的洞察,可以做出吸引力的游戏:具备对数据的敏锐,才能做出具有生命力的游戏.换言之,数据分析能够帮助游戏设计者不断还原真实的玩家游戏 ...

  2. 广州百田 技术类 笔试题

    1.其中一道题是输入一组十六进制数,其中大写字母ABCDEF,数字"1~9",字符串类型为string.其中把十六进制数转化为二进制数.比如"3A".输出结果为 ...

  3. 百田游戏策划面试经验

    面试职位是百田的游戏策划中的数值策划方向. 面试中没有问到很具体的数学问题,都是一些主观的题,除了自我介绍外,通过了解对方知道我倾向与dota类游戏,于是问了我lol里面的数值系统,我简单说了下防御和 ...

  4. 广州百田2015校园招聘笔试题

    昨天参加了百田春招,笔试题3道大题. 一.给定两个正整数n行和m行,将数字0-n*m-1按顺时针方向旋转填入n*m的矩阵并输出 如n=4m=5时,输出 0     1     2     3     ...

  5. 世界500强公司面试题(很多)

    世界500强公司面试题(很多) 快到春节了,很多朋友又在酝酿跳槽的事,找了许多经典的面试题目,估计这些题目全部研究过了,针对非技术的面试应该足够了:) 第一章 微软面试题 面试官:现在我们要问一个问题 ...

  6. 回答华为公司面试题一头牛重800公斤一座桥承重700公斤问牛怎么过桥?

    如何回答华为公司面试题一头牛重800公斤一座桥承重700公斤问牛怎么过桥? 作者:ICEplate 链接:https://www.zhihu.com/question/455269838/answer ...

  7. 求职季找工作心得与应聘经验分享(一)

    历经一年光阴,博主完整地走过了从心理准备.技术准备.参与笔试与面试流程到与HR乃至公司高管深入交流的心路历程,最终在这个盛夏的毕业季之后,迈入了自己综合考量下最为满意的一个单位.回头望去,博主前后一共 ...

  8. 南京中软/软通/金证/易宝等外包公司面试题

    楼主以两年工作经验去面试,以下所属公司未标注(面的太多,记不清了.),不按顺序: 一. 1.项目中多态的应用? 2.接口和抽象类的异同? 3.使用过哪些集合?ArrayList和LinkedList异 ...

  9. 【校园招聘】广州百田

    广州百田http://www.baitianinfo.com/join/campus.html#jishulei 招聘流程 宣讲行程 招聘职位 日期 地点 学校 岗位 10月15日 19:00 大学城 ...

最新文章

  1. java 反序列化 ysoserial exploit/JRMPClient 原理剖析
  2. VTK:vtkAnimationScene用法实战
  3. 【转】使用PowerApps快速构建基于主题的轻业务应用 —— 进阶篇
  4. rip协议中周期性广播路由信息的报文_距离矢量路由协议-RIP
  5. 使用firefox44版本,弃用chrome
  6. 关于 httpUrlConnection 的 setDoOutput 与 setDoInput的区别
  7. uboot在s3c2440上的移植(1)
  8. SpringCloud之 Feign的简单使用
  9. 如何将360全景图导出高清短视频分享到视频平台上?
  10. 计算机win10分区软件,完全不需要第三方工具!教你轻松调整Win10硬盘分区
  11. vsomeip源码梳理 -- OfferService流程
  12. c语言答案-贾宗璞 许合利,C语言习题答案贾宗璞许合利较全-.doc-资源下载在线文库www.lddoc.cn...
  13. php发送邮件email
  14. 计算机经典书籍电子书合集
  15. 英语语法---四种句子类型的介绍
  16. Google VR开发-Cardboard VR SDK反畸变实现
  17. 完全二叉树与满二叉树的区别(有图)
  18. JavaWeb学习笔记(HTML语言)
  19. 从“Unknown database engine MySQL“说起
  20. 世界地图并不是世界的真实样貌!甚至误差非常大

热门文章

  1. Ubuntu 22.04操作系统下常用软件备忘
  2. 向毕业妥协系列之深度学习笔记(三)DL的实用层面(上)
  3. DOM windows对象 navigator对象 详细介绍
  4. 如果诸葛亮用C#写出师表...
  5. 关于差分隐私的一些基本概念的整理
  6. 压缩[SCOI2007]
  7. 席南华院士:数学的意义
  8. 大唐芙蓉园游记(r11笔记第56天)
  9. 斯坦福大学机器学习——K-means算法
  10. 基于JAVA的简单迷宫游戏