摘要: 题意:已知有n个工作,已知每个工作需要的工作时间qi和截至时间di,工作只能串行完成,问最多能完成多少个工作 思路:首先我们按照截至时间从小到大排序,让它们依次进入优先队列中,当发生执行完成时间大于截至时间时,我通过优先队列把工作中最长的需要时间出队 优先队列的比较函数: 代码: 阅读全文
posted @ 2017-06-03 10:18 simpleknight 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 题意:给你正确的第i个事件的时间是第a[i]时发生,然后给出学生的答案,问你先后时间最多的顺序个数是多少 思路:利用dp中的最长上升子序列解题,我们可以得到状态方程 dp[i][j]=dp[i-1][j-1]+1 (a[i]==b[j]) dp[i][j]=max(dp[i-1][j],dp[i][ 阅读全文
posted @ 2017-05-24 19:14 simpleknight 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题意:求在小于等于N的正整数中有多少个X满足:X mod a[0] = b[0], X mod a[1] = b[1], X mod a[2] = b[2], …, X mod a[i] = b[i], … (0 < a[i] <= 10)。 思路:运用我上一个博客的模板再加一个 性质—— 通解:X 阅读全文
posted @ 2017-05-06 20:51 simpleknight 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 题意:给你n个对数,ai,ki X = a1 *x1 + k1 X = a2 *x2 + k2 ..... X = ai*xi + ki 问你是否存在这样一个X,存在就输出该值,否则输出-1 思路: 对于模线性方程组,可以进行方程组合并,求出合并后的方程的解,这样就可以很快的推出方程的最终解,不管这 阅读全文
posted @ 2017-05-06 19:32 simpleknight 阅读(436) 评论(0) 推荐(1) 编辑
摘要: 题意:给你一个n*n的全是0的矩阵,和k个数字“1”,让你把这k个数字1按照从上到下,从左到右的顺序构建出来 思路:模拟即可 代码: 阅读全文
posted @ 2017-05-02 19:40 simpleknight 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个n*m的方格,给定周长,求在不大于这个周长的情况下,问有多少个矩形 思路:固定一边枚举边的长度,然后根据等差数列计算 代码: 阅读全文
posted @ 2017-04-22 21:01 simpleknight 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 题目:给你一堆ip,求他们的最小网络地址和网络掩码 思路:找到最大的ip和最小的ip,把他们转化成二进制,从头到尾找二进制位相同的个数,最小网络地址把后面的不同的所有二进制变成0,网络掩码把前面的相同变成一 代码: 阅读全文
posted @ 2017-04-14 20:01 simpleknight 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题意:求 a1ˆa2ˆa3ˆ. . .ˆaN mod m 思路:利用 和递归求解 代码: 阅读全文
posted @ 2017-04-08 22:42 simpleknight 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题意:求A^B mod C,其中(1<=A,C<=1000000000,1<=B<=10^1000000). 思路: 在有些题目中我们需要对指数进行降幂处理才能计算。比如计算 其中和 这里由于很大,所以需要进行降幂。那么实际上有如下降幂公式 有了上述公式,很多题目就可以迎刃而解了。 摘自ACdrea 阅读全文
posted @ 2017-04-08 22:33 simpleknight 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个矩阵A,求A+A^2+A^3+...+A^n的矩阵,输出这个矩阵的最后一位数字 思路:大神博客链接 :点我 代码: 阅读全文
posted @ 2017-04-07 22:39 simpleknight 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 题意:给你 m 个电梯,每个电梯有两个按钮, u 和 d ,分别代表上 u 层,和下 d 层,每一次你都从第0层开始做电梯,你可以按这个电梯按钮 m 次,假设楼层无限高,问你可以到达的最低楼层是多少,0层除外? 思路: 我们假设按 上走 x 次, 那么下走为 (n-x) 次 那么可以到达的楼层为 k 阅读全文
posted @ 2017-04-07 20:27 simpleknight 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 题意:已知斐波那契数列fib(i) , 给你n 和 k , 求∑fib(i)*ik (1<=i<=n) 思路:不得不说,这道题很有意思,首先我们根据以往得出的一个经验,当我们遇到 X^k 的形式,当 X 很大,k很小时,我们可以利用二项式定理进行展开,然后求出递推式在利用矩阵加速 推导过程: 已知 阅读全文
posted @ 2017-04-06 16:50 simpleknight 阅读(799) 评论(0) 推荐(0) 编辑
摘要: 题意:给你 n 和 k ,让你求 n^k 的前三位和后三位 思路:后三位很简单,直接快速幂就好,重点在于如何求前三位,注意前导0 资料:求n^k的前m位 博客连接地址 代码: 阅读全文
posted @ 2017-04-04 21:03 simpleknight 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个数,让你判断是否是非素数,同时a^n%n==a (其中 a 的范围为 2~n-1) 思路:先判断是不是非素数,然后利用快速幂对每个a进行判断 代码: 阅读全文
posted @ 2017-04-04 20:14 simpleknight 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 题意:给你一个有向图,从A 点到 B点恰好经过k个点的方案数 (k < 20), 可以走重复边 思路:利用离散数学中的可达矩阵,可达矩阵的K次幂便是从i到j走K步能到达的方案数 代码: 阅读全文
posted @ 2017-04-03 16:27 simpleknight 阅读(294) 评论(0) 推荐(0) 编辑