- 博客(8)
- 收藏
- 关注
原创 洛谷 P1020 导弹拦截 最长上升子序列 LIS
首先想到DP f[i] 表示 从 1 到 i 位 在选择 i 的情况下的最长上升子序列;状态转移 :if(h[i]>=h[j]) f[i]=max(f[i],f[j]+1); 复杂度 (O) n²; 优化 最长上升子序列 LIS 此题求下降同理 输入样例 389 207 155 300 299 170 158 65输出样例 6 2我们先模拟 过程(1)...
2018-10-30 22:53:14 244
原创 洛谷 P1068 分数线划定 结构体排序 sort — cmp
cmp 接收的是排序结构体类型,不是结构体中位置。 return 左变量 < 右变量 为升序。sort(结构体+i,结构体+j,cmp)排序 i 位 到 j-1 位 结构体。采用cmp 比较方式。#include<cstdio>#include<cmath>#include<cstring>#include<ctime>#in...
2018-10-30 22:14:28 350
原创 洛谷 P1126 机器人搬重物 Bfs + 记忆化
将所有选择循环化,用数字记忆搜索状态,坐标 x=f[k][0] y=f[k][1]; 方向=f[k][2], 时间=f[k][3];题目需要将地图转化,障碍物在格子里,机器人在点上,并且占位4格,特殊情况,起点或终点在障碍物上,或不能占位机器人。#include<cstdio>#include<cmath>#include<cstring&...
2018-10-30 22:02:11 276
原创 洛谷P1141 01迷宫 经典 Dfs + 记忆化搜索,并查集
将方向用自定义数组循环化 ,读入时注意字符串处理,走过的地方记忆化。并查集,不同联通块采用不同颜色标记记忆,方便多次查询。并记忆每种颜色染色数量(即联通块大小)。#include<cstdio>#include<cmath>#include<cstring>#include<ctime>#include<iostream>...
2018-10-30 21:53:06 452
原创 筛素数
主要看程序:空间 O (n) 时间 O (n) 常数大10000000 跑了 0.858 秒 可以接受#include#include#include#includeusing namespace std;const int N = 100000000;int n, tot, f[N], prime[N];void shaiprime(int n) { for
2016-11-15 08:14:39 269
原创 扩展欧几里得定理 exgcd
解 ax + by = gcd(a,b);ax+ by = 1 (gcd(a,b) = 1)ax + by = 1 => bx + (a%b)y = 1 => bx + (a-(a/b)*b)y = 1 => ya + (x - (a/b)y)b = 1逆元 : ax = 1(mod p) => ax - py = 1 同理.#inclu
2016-11-15 07:48:43 266
原创 NOIP 2015 Day T3 landlords 斗地主
当时考试的时候没调出来, 悲催的只有30分;其实就是贪心+Dfs;优先考虑各种顺子,然后考虑带牌, 最后对子和单牌;注意带牌 带对子不能是双王;下面我把牌值换了一下:原来是 3 4 5 6 7 8 9 10 J Q K A 2 小王 大王代码中 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14#include#include#i
2016-11-08 15:06:51 430
原创 【bzoj2616】SPOJ PERIODNI 树形DP
给定一个N列的表格,每列的高度各不相同,但底部对齐,然后向表格中填入K个相同的数,填写时要求不能有两个数在同一列,或同一行,下图中b是错误的填写,a是正确的填写,因为两个a虽然在同一行,但它们中间的表格断开。 输出所有填写方案数对1 000 000 007的余数。输入:第一行两个整数 N 和 K (1 ≤ N ≤ 500, 1 ≤ K ≤ 500),表示表格的列数,和要填写的数的
2016-11-08 11:36:19 706
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人