indeed2017校招在线编程题(网测)三
A. Calculate Sequence
分析:就是斐波那契递推公式,但是初始值是指定的,只用求第10个数,数据范围和复杂度都比较小,直接写。
B. 忘了叫啥了。
就是有a-j十个字符组成的字符串,要求去掉一些字符,使得剩下的长度大于k,且这些满足要求里面的字符串字典序最小的。然后需要枚举删除的字符串,2^10 = 1024,字符长度最大值100,所以复杂度为1024*100,在1s的时限内完全可以,直接编写。
C. Anagram Multiple Number
这题好像更简单哎,求一个数的倍数,而且长度和包含的字符完全一致,然后长度一致,那就只有2-9倍的数字满足要求,然后判断一下是否相同字符,这个数最大9999999,完全int就足够了,直接写。
D. Construct Permutation
先读懂题意,(这些题虽然都是英文的,但是描述都很短,看例子也很容易理解),就是某些位置不能放置某些数字,数据范围maxn = 100,时限是2s,用dfs一个一个序列检查合法性肯定是不行的,因为100!,这个复杂度实在是太高了,然后考虑有没有一种规则性的放法,使得按照这个规则放置以后都是满足要求的,我没有想到这个放法,(后来听师姐说可以),然后我就考虑每个位置只能放一个数,而且一定存在解,我猜是不是最大流最小割可以做,然后就画了画,应该可以。就是一个数字可以放到任一位置,这些边上的流量为1,除去输入中的不能放置的情况,然后添加源点到每个数字一条边,这些边上的流量也是1,然后添加汇点,每个位置到汇点的流量也是1,然后运行最大流算法,我从网上找了一个dinic的模板,其他算法应该也可以,由于最后一定存在解,也就是最大流一定是n,就是数字的个数,然后寻找数字的放置的位置,就是该数字发出的边中流量由1变为0的边,另一端的顶点就是最后的位置。最后计算复杂度,顶点个数100*2 + 2 = 202,dinic复杂度 202 * (202 * (202 + 1) / 2) = 8e6, 打答案的复杂度是100 * 100,在2s的时限内,完全可以。
代码先不贴了。
indeed2017校招在线编程题(网测)三的更多相关文章
- 18年春招某编程题:有三个整数X,Y,Z,要求进行若干次操作使得X,Y,Z相等
题目描述: 给定三个整数X,Y,Z,要求进行若干次操作使得X,Y,Z相等,操作有两种: 1.从X,Y,Z中选择两个数都加1. 2.从X,Y,Z中选择一个数加2. 求最少需要多少次操作. 题目思路: 1 ...
- 去哪儿网2017校招在线笔试(前端工程师)编程题及JavaScript代码
编程题很简单.整个试卷结构为: 一.问答题: 对前端的理解,了解哪些框架库? 二.在线编程题:身份证分组 如下第一道:身份证分组 三.在线编程题:身份证分组.统计字符.酒店价格(三选二) 如下第二三四 ...
- JavaScript数组基础编程题归纳
之前的随笔"JavaScript中数组类型的属性和方法"中有介绍很多数组类型的方法,但都是一些理论.最近在练习在线编程题,发现自己还是习惯于用常规的循环来答题,对于数组的方法的使用 ...
- [ios-必看] 国人当自强:两岸三地在线编程学习网站大搜罗 [转]
http://blog.csdn.net/lyy_whg/article/details/17350923 说到国内的在线编程学习网站,很多人都是一脸茫然,即使是资深开发者也是如此.在许多人眼中,尽管 ...
- 网易2018校招内推编程题-堆棋子-C++实现
链接:https://www.nowcoder.com/questionTerminal/27f3672f17f94a289f3de86b69f8a25b来源:牛客网 [编程题]堆棋子 热度指数:14 ...
- 网易云课堂_C++程序设计入门(下)_期末考试_期末考试在线编程题目
期末考试在线编程题目 返回考试 本次考试题目一共两个,在考试期间可以不限制次数地提交 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间 ...
- 牛客网在线判题系统JavaScript(V8)使用
JavaScript作为一种弱类型的编程语言,语法和C/C++.JAVA等存在差别,但是对于大部算法题,不只是C/C++.JAVA,也依然可以使用JavaScript来实现.所以在牛客网中,如果你喜欢 ...
- 京东校招笔试(C++方向)编程题
这次笔试是今年校招我参加的第一次笔试..出了很多状况,基础知识不扎实,导致选择题耽误了太多时间,导致后面的题目没做完,编程题也没有在 时间内写出来,基本没有面试机会了.不过我继续研究第二个编程题,在1 ...
- 网易云课堂_C++程序设计入门(上)_第6单元:丹枫虽老犹多态–继承与多态_第6单元作业【2】- 在线编程(难度:中)
第6单元作业[2]- 在线编程(难度:中) 查看帮助 返回 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统 ...
随机推荐
- pjsip视频通信开发(上层应用)之拨号键盘下部份拨号和删除功能
我们开发的是视频电话,所以既可以视频通话,可以只有音频的通话,所以底部含有两个按钮,最后一个就是删除功能,如果输入错误,我们可以删除输入的内容. 这里我们要通过重写LinearLayout来实现这部份 ...
- Linux內核中常用的一些延時方法
Linux內核中常用的一些延時方法 這些方法在以下路徑下定義:kernel/include/linux/delay.h #ifndef _LINUX_DELAY_H #define _LINUX_DE ...
- 图形化OpenGL调试器 BuGLe [转]
BuGLe 结合图形化的OpenGL调试与选择的过滤器上的OpenGL命令流.调试器可以查看状态.纹理.framebuffers ,着色器,而过滤器允许日志,错误检查,自由相机控制,视频捕捉等. 主页 ...
- 2013年中国区Skyline软件价格体系
< 2013年中国区Skyline软件价格体系 序号 产品名称 描述 市场报价 1 TerraExplorer Pro 5.1 对 ...
- [AngularJS] Html ngSanitize, $sce
Safely render arbitrary HTML snippets by using ngSanitize and $sce. By default angularJS consider us ...
- 【模式识别】Learning To Rank之RankBoost
RankBoost的思想比較简单,是二元Learning to rank的常规思路:通过构造目标分类器,使得pair之间的对象存在相对大小关系.通俗点说,把对象组成一对对的pair,比方一组排序r1& ...
- linux编程基础
http://blog.csdn.net/jnu_simba/article/details/8806654
- 4K Block Size的Device和 Aligned IO
http://www.cnblogs.com/cenalulu/p/3587006.html 背景:最近采购了一批新的服务器,底层的存储设备的默认physical sector size从原有的 ...
- 关于Android M RuntimePermission的问题
关于shouldShowRequestPermissionRationale的理解, 在onRequestPermissionsResult里如果用户拒绝了权限, 可以调用这个api, 返回true, ...
- Android 自学之画廊视图(Gallery)功能和用法
Gallery与之前讲的Spinner有共同的父类:AbsSpinner,表明Gallery和Spinner都是一个列表框.他们之间的区别在于Spinner显示的是一个垂直的列表框,而Gallery显 ...