第六题(下排每个数都是先前上排那十个数在下排出现的次数)
腾讯面试题:
给你10 分钟时间,根据上排给出十个数,在其下排填出对应的十个数
要求下排每个数都是先前上排那十个数在下排出现的次数。
上排的十个数如下:
【0,1,2,3,4,5,6,7,8,9】
举一个例子,
数值: 0,1,2,3,4,5,6,7,8,9
分配: 6,2,1,0,0,0,1,0,0,0
0 在下排出现了6 次,1 在下排出现了2 次,
2 在下排出现了1 次,3 在下排出现了0 次....
以此类推..
思路:如果采用暴力穷举法的话,时间效率不好。仔细观察不难得知,下排数字总和加起来为10,可以利用这个性质,通过递归,得到下排可能的排列结果,然后再判断这些结果是否满足下排个数是上排对应位置数字的出现频率,得出最终结果。
代码:
namespace MS100P_6
{const int Len = 10;bool isLegal(int *A, int n){int count = 0;for (int i = 0; i < n; i++){int frequency = 0;for (int j = 0; j < n; j++){if (i == A[j])frequency++;}if (A[i] != frequency)return false;}return true;}void genArray(int *A, int n, int Sum) {if (n < 1) return;if (n == 1){A[0] = Sum;if (isLegal(A, Len)){for (int i = 0; i < Len; i++)cout << A[i] << ' ';cout << endl;}}elsefor (int i = 0; i<Sum; ++i){A[n - 1] = i;genArray(A, n - 1, Sum - i);}}void test(){int A[Len];for (int i = 0; i < Len; i++)cout << i << ' ';cout << endl;genArray(A, Len, Len);}
}
第六题(下排每个数都是先前上排那十个数在下排出现的次数)相关推荐
- 根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数...
如: 上排数组A:0,1,2,3,4,5,6,7,8,9 下排数组B:6,2,1,0,0,0,1,0,0,0 我比较无脑的记住了网上找的一个结论 0出现的次数为n-4,1出现的次数为2.2出现的次数为 ...
- 面试题整理18 根据上排给出十个数,在其下排填出对应的十个数
题目: 给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数. 上排的十个数如下: [0,1,2,3,4,5,6,7,8 ...
- 【编程题目】给你 10 分钟时间,根据上排给出十个数,在其下排填出对应的十个数...
第 6 题(数组) 腾讯面试题: 给你 10 分钟时间,根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数. 上排的十个数如下: [0,1,2,3,4,5 ...
- 新方法-根据上排给出十个数,在其下排填出对应的十个数
给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数. 上排的十个数如下: [0,1,2,3,4,5,6,7,8,9] ...
- 腾讯面试题:根据上排给出的十个数,在其下排填出对应的十个数。
版权所有.所有权利保留. 欢迎转载,转载时请注明出处: http://blog.csdn.net/xiaofei_it/article/details/17172769 根据上排给出的十个数,在其下排 ...
- 腾讯面试题,给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数
题目: 给你10分钟时间,根据上排给出十个数,在其下排填出对应的十个数 要求下排每个数都是先前上排那十个数在下排出现的次数. 上排的十个数如下: [0,1,2,3,4,5,6,7,8,9] 举一个例子 ...
- c语言10个数输出最大数,C语言怎么输入十个数输出最大值
C语言怎么输入十个数输出最大值 C语言求输入的10个数中最大值的编程方法如下: 1.首先需要定义一个整型数组空间,因为这里需要输入十个数,所以数组空间为10个.int a[10]; 2.接着定义一个最 ...
- (Google)谷歌笔试算法题:要求相邻的两个数都不小于或者不大于其本身的排序
如题,要求相邻的两个数都不小于或者不大于其本身的排序, 那么也就是说每个数字必须同时大于等于或者小于等于它左右两边的数字,例如 3>=2<=6,那么这里2就是同时同于等于3且小于等于6 ...
- 合肥工业大学机器人技术五十六题
合肥工业大学机器人技术五十六题 题目要求 //拿球后行为,利用已有 Worldmodel(21) (1)在 playOn 模式下,拿到球以后朝前方快速带球. (2)在 PlayOn 模式下,拿到球以后 ...
最新文章
- 不好好学习会被AI开除的!俄罗斯校园将启用AI,识别差生,建议开除
- Android NDK: WARNING: APP_PLATFORM android-9 is larger than android:minSdkVersion问题
- 热门解读:大促的活动设计及效果评估的优化
- 小米11pro和vivox60哪个好
- [编程题]表达式合法判断
- python三级联动菜单_VUE+element三级联动或树形菜单获取最后一项,并加入到表格中...
- Saiku2.6 配置数据源
- Python爬虫入门记录1.0:获取网站某板块首页面资讯文章标题
- deepin15.11 下载软件Aria2 全局配置方法
- [原创]戒盈祈愿(200509总结)
- 【数学】焦点弦定理(?)
- 【现代电路理论】【2】考尔法设计无源单口网络
- Unity游戏开发——unity接入多渠道sdk
- 给别人打工不如自己当老板,亚马逊电商来看看
- python自动化接口测试excel脚本_python+ddt+unittest+excel+request实现接口自动化
- manual 离线手册 韩顺平php_PHP官方中文手册2017最新完整版 带用户注释 chm
- 保养和维护台式计算机的方法,台式电脑的日常保养常识
- 当女作家化身服务员:我在底层的生活
- 从知青、终身教授到芯原创始人,戴伟民的中国“芯”之路
- html和css[基础用法]
热门文章
- Visual Assist X用法
- springboot全省中小学师生共建习题交流与指导平台的设计与实现 毕业设计-附源码031619
- python3x版本的保留字总数_Python3.6.5版本的保留字总数是:()-智慧树大数据分析的python基础章节答案...
- 练习——模拟真实双色球规则写彩票循环2
- Unity 基于EventTrigger的UI事件系统
- 九游与阿里手游初步整合 将获淘宝支付宝入口
- SCU 4438 字符串哈希
- python改文件名_python实现批量修改文件名代码
- go 获得当天0时0分0秒时间戳
- android裁剪图片功能,Android通过ClipDrawable实现图片裁剪功能