![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
工作相关笔试面试题
文章平均质量分 64
ruclion
天上一日,地下十年
展开
-
微软2017年预科生计划在线编程笔试第二场-#1500 : EL SUENO
http://hihocoder.com/problemset/problem/1500题意理解:一棵树,父亲只有在直接儿子被干掉的权重和大于某个数才能都被干掉,并且干掉一个点需要若干时间。权重《=20000, 节点《=2000,可以每一个节点都用裸的01背包做,注意背包容量可以超过,最后取min急转弯:数据范围小,可以裸着做,另外注意min的取法。算法:无原创 2017-09-13 09:02:27 · 380 阅读 · 0 评论 -
2017微软秋季校园招聘在线编程笔试-#1400 : Composition
http://hihocoder.com/problemset/problem/1400题意理解:有限制的两个不能相邻,i之和前面剩下的那一个相关,所以可以f【i】【ch】的动态规划去做,每次转移考虑删不删i的字符急转弯:想到i只和前面一个相关,并且可以记录下来。算法:无数据结构:无##'f'__author__ = 'hjkrucli原创 2017-09-19 20:57:43 · 2608 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试第二场-#1499 : A Box of Coins
http://hihocoder.com/problemset/problem/1499题意理解:可以左右上下移动硬币,其实左右看作往右,然后可以移动负数个硬币。上下特殊处理,其实就是考虑最靠左的一列,如果上下都多,那么肯定往后移动,上下都少,肯定均需要往右移动负数,上下有多和少,内部先自己解决,然后再往右,这样的策略一定是最好的。然后处理完第一列,再处理第二列,贪心的做。急转原创 2017-09-11 08:41:22 · 395 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试第二场-#1498 : Diligent Robots
http://hihocoder.com/problemset/problem/1498题意理解:要制作机器人,一定是集中在前面先做,然后再生产;然后枚举前面几个Q小时生产机器人,因为是2的指数,40天之内一定能达到1e12以上,所以大于40个Q就不用枚举了。枚举完之后,假设后面紧接的一个Q还有部分机器人在制作机器人,设为x,这种情况用数学推,或者假设都开始干活,不做机器人了,这种情况原创 2017-09-10 23:01:06 · 407 阅读 · 0 评论 -
2017微软秋季校园招聘在线编程笔试-#1399 : Shortening Sequence
http://hihocoder.com/problemset/problem/1399题意理解:就是奇偶相碰会消失,最后剩多少个急转弯:其实只要有奇数和偶数存在,都会想消,所以最后剩的就是多的那个。算法:无。数据结构:无。from __future__ import print_function##'easy'__author__ = 'h原创 2017-09-18 16:51:26 · 542 阅读 · 1 评论 -
微软2017年预科生计划在线编程笔试第二场-#1497 : Queen Attack
http://hihocoder.com/problemset/problem/1497题意理解:看横坐标一样有多少对,当然还有纵坐标,i-j和i+j急转弯:计算复杂度,因为最后有100000个旗子,并且他们的坐标很大,所以统计的时候要用map算法:无数据结构:map,在python中有dictfrom __future__ import print_function原创 2017-09-10 11:16:20 · 385 阅读 · 0 评论 -
2016微软探星夏令营在线技术笔试-#1342 : Full Binary Tree Picture
http://hihocoder.com/problemset/problem/1342题意理解:找规律,N=1,2是特殊的,之后的就有规律了:y坐标最下一层是2,4,2,4的差,最后就是差6, 12, 24.。。。x左边最下差2, 之后是3,6,12.。。。 一行一行的算,算某一行的时候,写出来最左边为第一项的等差数列通项,然后用f(y2) - f(y1 - 1)来算急转原创 2017-09-26 16:56:17 · 324 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试-#1492 : Parentheses Sequence
http://hihocoder.com/problemset/problem/1492题意理解:首先最少括号数就是从左到右,必须放(的时候才放。方案数挺难算的,但是其实最少是一个策略的限制条件,而且最少的时候,一定是放的(在原来的)的挨着的左边,而)在原来的(的挨着的右边,并且放下去的(和)一定是)))(((这样的。所以左和右分开算,算左的时候,到)时才认真算,分为)左边放了原创 2017-09-18 11:01:36 · 685 阅读 · 0 评论 -
2016微软探星夏令营在线技术笔试-#1341 : Constraint Checker
http://hihocoder.com/problemset/problem/1341题意理解:按照描述的每次转换字母然后判定就好了急转弯:有点麻烦算法:无数据结构:无from __future__ import print_function##'interpret'__author__ = 'hjkruclion'maxn = 30原创 2017-09-25 16:59:31 · 256 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试-#1491 : Monster Killing
http://hihocoder.com/problemset/problem/1491题意理解:总共的格子数《=20,并且不同状态只有6个,所以可以f【sta】【r】装压,表示sta解决了,目前无敌是r,然后枚举下一次解决的是谁,每次一口气解决一个。根据题意模拟,注意新开一个格子需要1个round.急转弯:装压,每次解决一个。注意每次枚举的要是新格子,不然一直刷S可能会有错的原创 2017-09-17 11:38:04 · 385 阅读 · 0 评论 -
leetcode-4. Median of Two Sorted Arrays
https://leetcode.com/problems/median-of-two-sorted-arrays/description/题意理解:二分找中位数,凑《=(m+n+1)/2的在a中的数,然后找到在b中的数急转弯:先定a,再定b算法:二分数据结构:##'binary'__author__ = 'hjkruclion'impor原创 2017-09-25 09:07:17 · 213 阅读 · 0 评论 -
2017微软秋季校园招聘在线编程笔试-#1402 : MS Recognition
http://hihocoder.com/problemset/problem/1402题意理解:M和S都很大,并且相互离的很远,M和S的两个端点不一样,M不平衡,所以端点的中点到重心的距离和端点的距离比值》0.5就是M。很奇怪为什么画一条支线看个数会不行,或者是参数设置的不好?急转弯:端点和重心,距离关系算法:bfs找端点数据结构:无from __原创 2017-09-24 08:55:58 · 358 阅读 · 0 评论 -
2017微软秋季校园招聘在线编程笔试-#1401 : Registration Day
http://hihocoder.com/problemset/problem/1401题意理解:每个人进队离队100次,10000个人,所以用优先队列1e6的nlogn应该可以,而将班级混起来,按照时间t排序就是对的。急转弯:使用优先队列,班级混起来,用时间t和sno排序来做就是对的:同一个课堂的顺序一定对,而不同课堂,若排队的再其他课堂没排队的前面,那么当前排队的优先级一定原创 2017-09-23 11:14:47 · 359 阅读 · 0 评论 -
hdu4347-The Closest M Points
http://acm.hdu.edu.cn/showproblem.php?pid=4347找距离询问点最近的m个点,标准的k-d tree的题目,k-d tree的像一个线段树,把点分成两堆,关键在询问的时候,先按照分类的那一维先询问靠近的那一堆,然后再加自己,然后看看单独这一维的距离是否和远的那一堆已经很远了,如果很远就不去遍历远的那一堆了。、注:dfs的时候使用全局变量一定要小心,会原创 2017-09-23 09:51:10 · 268 阅读 · 0 评论 -
北大算法分析和复杂性理论-2017算法课第一次作业E:二叉树的操作
http://algorithm.openjudge.cn/algorithma/E/题意理解:复杂度允许暴力做,记不记录父亲是谁都可以,注意用指针的话别re。急转弯:无算法:无数据结构:二叉树(的遍历)#include #include #include using namespace std;const int maxn = 100 +原创 2017-09-14 21:59:25 · 498 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试-#1490 : Tree Restoration
http://hihocoder.com/problemset/problem/1490题意理解:根据给的每一层的节点找到每个节点的父亲,注意右边的节点的父亲不能再左边节点的父亲的左边,所以就很简单了。考虑最后一层的父亲怎么找,其实就是挨着往后平移,当挨着的两个叶子距离相差==2的时候,父亲就一样,不然就找上一层接着往右边的第一个不是叶子结点的节点。然后为了之后上一层也有距离的关系,把原创 2017-09-14 21:45:34 · 250 阅读 · 0 评论 -
微软2017年预科生计划在线编程笔试-#1489 : Legendary Items
http://hihocoder.com/problemset/problem/1489题意理解:每次获得一个物品之后都会清空初始概率为P/(pow(2, have)), 实际上获得N个东西的过程分别是独立的,并且N》=8之后的初始概率都是0,所以只需要分别算《=7和8的期望次数,这个用高中的期望定义暴力算就好了急转弯:N》=8的其实和8一样算法:无数据原创 2017-09-13 16:04:01 · 330 阅读 · 0 评论 -
hdu3294-Girls' research
http://acm.hdu.edu.cn/showproblem.php?pid=3294找最长的回文串的基本题目,用马拉车算法。最核心的地方是len【i】的求法,利用之前的len,并且maxr的思想。#include #include #include using namespace std;const int maxn = 1e6;int len[maxn];in原创 2017-09-21 15:48:37 · 206 阅读 · 0 评论