2019-04-26
P3691 妖精大战争 神经网络初窥

https://www.luogu.org/problemnew/show/P3691 题目大意: 给你一堆点,每个点有个属性,要么是1要么是-1. 这些属于1和-1类的点分布在x∈[0,100],y∈[0,100]的平面上, 然后再给你一堆点,同样具有要么是1要么是-1的属性,问你这些额外的点是属于1还是-1, 保证对于所有的点都存在一条直线,可以把不同属性的点分开两边, 由于琪露诺太笨了存在0.1%的概率,一开始输入 …

阅读更多 →
代码
2017-11-09
P3385 【模板】负环【DFS-SPFA】

题目描述 暴力枚举/SPFA/Bellman-ford/奇怪的贪心/超神搜索 输入输出格式 输入格式:第一行一个正整数T表示数据组数,对于每组数据: 第一行两个正整数N M,表示图有N个顶点,M条边 接下来M行,每行三个整数a b w,表示a->b有一条权值为w的边(若w<0则为单向,否则双向) 输出格式:共T行。对于每组数据,存在负环则输出一行"YE5"(不含引号),否则输出一行"N0"( …

阅读更多 →
代码
2017-11-07
【P3372】【模板】线段树 1

题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义 …

阅读更多 →
代码
2017-11-07
【luogu3368】【模板】树状数组 2

题目描述 如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的和 输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含2或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将 …

阅读更多 →
代码
2016-11-15
P1195 口袋的天空 (NOIP Kruskal复习)

[infobox title="https://www.luogu.org/problem/show?pid=1195"]题目背景 小杉坐在教室里,透过口袋一样的窗户看口袋一样的天空。 有很多云飘在那里,看起来很漂亮,小杉想摘下那样美的几朵云,做成棉花糖。 题目描述 给你云朵的个数N,再给你M个关系,表示哪些云朵可以连在一起。 现在小杉要把所有云朵连成K个棉花糖,一个棉花糖最少要用掉一朵云,小杉想知道他怎么 …

阅读更多 →
代码
2016-11-14
P1238 走迷宫(水水的DFS)

[successbox title="P1238 走迷宫"]题目描述 有一个m*n格的迷宫(表示有m行、n列),其中有可走的也有不可走的,如果用1表示可以走,0表示不可以走,文件读入这m*n个数据和起始点、结束点(起始点和结束点都是用两个数据来描述的,分别表示这个点的行号和列号)。现在要你编程找出所有可行的道路,要求所走的路中没有重复的点,走时只能是上下左右四个方向。如果一条路都 …

阅读更多 →
代码
2016-11-12
P1379 八数码难题(康托展开+逆展开+我的丑陋的BFS)

[infobox title="P1379 八数码难题 "] 题目描述 在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了使题目简单,设目标状态为123804765),找到一种最少步骤的移动方法,实现从初始布局到目标布局的转变。 输入输出格式 输 …

阅读更多 →
代码
2016-11-08
P1280 尼克的任务

[success]原题: https://www.luogu.org/problem/show?pid=1280[/success] 解法: 本来想到的是排个序然后根据K排序... 然后... 没有想到怎么做... 然后无奈看题解... 发现我想多了【捂脸】 不要想得太复杂!!明明是你弱 代码:

阅读更多 →
代码
2016-11-07
P3379 【模板】最近公共祖先(LCA):Tarjan算法离线实现

[success]原题:https://www.luogu.org/problem/show?pid=3379[/success] 题意,给你一棵树,求几对点的LCA... 我的做法: 由于Tarjan够简单的,所以我就用了Tarjan... 这个算法真的很简单!!但是超级好理解的!! 以前从来没写过LCA...这也是第一次吧 O(α(n) + M) 代码:

阅读更多 →
代码
2016-11-06
P2285 [HNOI2004]打鼹鼠

[success]原题 https://www.luogu.org/problem/show?pid=2285[/success] 我的解法: 在学校举办的模拟赛上的题目,最近一直在做DP题...然后结果当时想了没半个小时AC了, 回来想在洛谷再A一次,结果等级居然说是提高+/省选- = =...这个分级有点水啊... 做法也很简单,从时间顺序逆着来DP,看这个点在规定时间能到达哪几个点 dp[i] = max{dp[j]|time(i, j) >= dist(i, …

阅读更多 →
代码
2016-10-25
luoguP1541:NOIP2010提高组:乌龟棋

题目:https://www.luogu.org/problem/show?pid=1541 题意: 每个格子有一个值,可以有限定次数地走1,2,3,4步,求经过的格子的值总和 做法: 一开始想到的自然是n*k1*k2*k3*k4的DP,五维数组,内存可以滚动,但是时间复杂度... 后来发现其实可以直接忽略步数,直接开四维 dp[i][j][k][l]:分别用了几张卡片取得的值

阅读更多 →
代码
2016-10-21
NOIP2014普及 P2258:子矩阵

https://www.luogu.org/problem/show?pid=2258 做法:搜索+DP.. 复杂度O(2^n * n^3) 勉强能过..硬是给这题垃圾题调了几天..

阅读更多 →
未分类
2016-10-12
[SCOI2005]P2327:扫雷

https://www.luogu.org/problem/show?pid=2327 做法: dp.dp[i][j]表示到第i位的附近三格,有几种形状为j的可能 “形状为j”是什么意思呢,注意到如果附近三格有无雷用0,1表示的话,其实就组成了二进制数字,把他们转化为十进制即为j 那么j最大是7 转移的话直接根据上一次结果和当前数字判断即可,我用了滚动数组 O(n)  

阅读更多 →
代码
没有更多文章了...