首页 > TAG信息列表 > POI2013

【洛谷3547】[POI2013] CEN-Price List(BFS)

题目链接 有一张 \(n\) 个点 \(m\) 条边的无向图,边长均为 \(a\)。在原图中所有满足最短路长为 \(2a\) 的点对之间连一条边长为 \(b\) 的边。 求给定点 \(st\) 到所有点的距离。 \(1\le n,m\le10^5\),\(1\le a,b\le10^3\) 原图上的 BFS 根据 \(b\) 与 \(a\) 的大小关系,最短路径可

[POI2013]LUK-Triumphal arch

考虑二分答案。 肯定是对每个节点的儿子都要染色。 当时以为是所有节点的儿子数量的最多的。 后来发现前面如果有多余可以多给后面的。 设\(f[i]\)为\(i\)节点及子树的和标准操作的差。 那么\(f[i] = \sum_{(i \to v)}\ max(0,f[v]) + son[i] - k\) 考虑\(f[1]\)是否下于0即可。 #

P3558 [POI2013]BAJ-Bytecomputer(线性dp)

传送门 题目翻译: 给一个只包含-1,0,1的数列,每次操作可以让a[i]+=a[i-1],求最少操作次数使得序列单调不降 数据范围为N<=10^6 思路:线性dp,定义f[i][3],1<=i<=n,当前位置i取-1,0,1,数列1-i满足不下降的最小操作次数 直接看代码注释吧,主要懒 code: #include<bits/stdc++.h> using

P3558 [POI2013]BAJ-Bytecomputer

知识点:结论,线性 DP 原题面:Luogu 题意简述 给定一只包含 \(-1.0,1\) 的数列 \(a\),每次操作可令 \(a_{i} + a_{i-1}\)。 判断能否使该序列单调不降,若可以则求所需的最少操作次数。 \(1\le n\le 10^6\),\(|a_i|\le 1\)。 分析题意 发现一些结论: 显然应该从前往后操作。 若某位置

[POI2013] MOR-Tales of seafaring

传送门 简单题意:给n个点m条边无向图,每次询问两个点之间是否有长度为d的路径(不一定是简单路径)。即可以重复走一条边。 思路: 蛮水的叭。我们知道路径可以重复走,所以只要找到一条和d奇偶性相同的最短路,就可以做到了。 因为可以在一条边上不停来来回回,也就是在最短路上加上了一个偶数

[POI2013]BAJ-Bytecomputer

题目 不能多想系列,手玩几组数据简略证明出最终序列也只会存在\(0,1,-1\)三个数 做法 这样就好做了嘛 \(dp[i][c]\)表示前\(i\)个数,第\(i\)个数最终变成\(c\),然后枚举前一个数转移就好 My complete code #include<bits/stdc++.h> using namespace std; typedef int LL; const LL max

[POI2013]BAJ-Bytecomputer

传送门 很显然有一个结论:最大不过1,最小不过-1 然后dp,设\(f[i][j]\)为满足前\(i\)个不下降,当前放的是\(j-2\),转移就比较好想了 具体方程看代码吧,终于有一个自己会写的题了 代码(写了好多没用的min): #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> using

P3557 [POI2013]GRA-Tower Defense Game

先看题目吧 有一个n个点m条边的图,每条边距离是1,已知用k个攻击距离为1的塔可以打到整个地图,让构造一个方案使得用小于等于k个攻击距离为2的塔打到整个地图 一开始,我以为这题很麻烦,后来仔细研究研究,才发现有些简单,这里面的k仅仅起到一个启发的作用,我们只要大胆地做,只要脸不是太黑就

洛谷P3557 GRA-Tower Defense Game [POI2013] 构造

正解:构造 解题报告: 传送门 话说这题我理解题意理解了好久TT一直没懂那个,k的意义是什么,,,后来才明白,可能k就是没有意义的趴 然后就直接港正解趴QAQ 这题其实做了消防局的设立和将军令之后,就还是比较简单?直接一样的套路怼上去,然后就好了,,,? 其实真的没什么好写题解的,,,但是