几道数字算法问题1
来源:互联网 发布:java面试宝典 pdf 编辑:程序博客网 时间:2024/05/18 01:27
1、假如说有一串数字,11位,判断里面是否存在ABBA这样的数字?
bool IsAABB(int* num, int len){ bool b = false; int j = 0; for (int i = 0; i < len; i++) { if (num[i] == num[i+1]) { if (++j > 1) { b = true; break; } if (++j > 0) { i += 2; } } } return b;}bool IsABAB(int* num, int len){ bool b = false; int j = 0; for (int i = 0; i < len; i++) { if (num[i] == num[i+2]) { if (++j > 1) { b = true; break; } } } return b;}//连续bool IsContinuous(int* pCards, int nLen){ if (pCards == NULL || nLen <= 0) return false; int i = 0; int j = 0; int preCard = pCards[i]; for (i = 1; i < nLen; i++) { int curCard = pCards[i]; if (preCard == curCard) //与前一张卡号比较 { if (++j > 1) { return true; } } preCard = curCard; } return false;}//递增bool IsUpSeries(int* num, int len){ bool b = false; int j = 0; for (int i = 0; i < len; i++) { if (num[i] == num[i+1] - 1) { if (++j > 1) { b = true; break; } } } return b;}//递减bool IsDownSeries(int* num, int len){ bool b = false; int j = 0; for (int i = 0; i < len; i++) { if (num[i] == num[i+1] + 1) { if (++j > 1) { b = true; break; } } } return b;}bool IsABBA(int* num, int len){ bool b = false; int j = 0; for (int i = 0; i < len; i++) { if (num[i] == num[i+3]) { if (num[i+1] == num[i+2]) { b = true; break; } } } return b;}int main(){ int sNum[11] = {13968862123}; bool isGood = IsABBA(sNum, iLen); if (isGood) { printf("yes"); } else { printf("no"); }}
0 0
- 几道数字算法问题1
- 【算法】数字三角形问题
- 算法 数字排列问题
- 算法 数字三角形问题
- 算法考试填数字问题
- 算法之数字反转问题
- 获取一个数字的最高位的几种算法。
- 几道算法解答
- 几道算法题
- 几道算法习题
- 几道简单算法
- 几道算法题
- 数字三角形问题 算法入门经典
- 数字计数问题(算法实验)
- 动态规划算法:数字三角形问题
- 分治算法之数字旋转方阵问题
- Java贪心算法 删数字问题
- 算法笔记 //14_数字三角形问题
- 安卓StateMachine运行过程理解(翻译)
- 汇编语言笔记1 基础数据,定义,语令
- wince event用法实例
- mina粘包、多包和少包的解决方法
- 关于struts2 返回的结果是一个 简单的字符串的解决
- 几道数字算法问题1
- Ubuntu下忘记MySQL root密码解决方法
- 机器学习的最佳入门学习资源
- 已以用户 NT AUTHORITY\SYSTEM 的身份执行。 Error formatting query, probably invalid parameters [SQLSTATE 42000]
- 使用Linux命令行测试网速
- 行业词汇
- 图解HTTPS
- 继续畅通工程 hdu 最小生成树
- HackThisSite/Basic 4解决方案