#include <iostream> #include <cstdio> #include <sstream> #include <cstring> #include <map> #include <set> #include <vector> #include <stack> #include <queue> #include <algorithm> #include <cma…
题意: 给定一个有向图,每条边都有一个权值,每次你可以选择一个结点v和一个整数d,把所有以v为终点的边的权值减小d,把所有以v为起点的边的权值增加d,最后要让所有边权的最小值非负且尽量大 两个特判 1.图中存在负环 则 No Solution (构成差分约束系统的图后bk的最小值为w(u,v)- 1:所以check(1) 2.不存在最短路 则可以任意解  就是使x最大 看是否形成负环 还不形成负环 则说明 可以任意解 然后就是套最小值最大化的二分模板 #include <iostream> #…
[题意] 你需要花费不超过cost元来搭建一个比赛网络.网络中有n台机器,编号0~n-1,其中机器0为服务器,其他机器为客户机.一共有m条可以使用的网线,其中第i条网线的发送端是机器ui,接收端是机器vi(数据只能从机器ui单向传输到机器vi),带宽是bi Kbps,费用是ci元.每台客户机应当恰好从一台机器接收数据.你的任务是最大化网络中的最小带宽. InputFirst line of input contains T (≤ 50), the number of test cases. Th…
题意:N台机器,M条有向边,总资金C,现要到搭建一个以0号机(服务器)为跟的网路,已知每条网线可以把数据从u传递到v,其带宽为d,花费为c,且d越大,传输速度越快,问能够搭建的传输速度最快的网络d值是多少?(即:在C的支持下,网络中d的最小值最大是多少?) 一开始把问题想简单了,以为网线可以随便接,其实是确定了u->v的= = 最小树形图,概念蛮好理解的,要学习的话 理论:http://hi.baidu.com/bin183/item/5d93ef69ceb541176895e682 代码标注的…
题意:给定一个网络,一个服务器,其他的是客户机,有 m 条连线,每条有一个带宽和花费(单向边),让你用不超过 c 的花费,使得 0 到 所有的机器都能到达,并且使得最小带宽最大. 析:很明显是二分题,然后在判断,就是保证从 0 到所有的点都是通路,这就是最小树形图,直接上模板就好. 代码如下; #pragma comment(linker, "/STACK:1024000000,1024000000") #include <cstdio> #include <stri…
题意: 给n个点编号为0~n-1,0号点为根,给m条边(含自环,重边),每条边有个代价,也有带宽.给定c,问代价不超过c,树形图的最小带宽的最大值能达到多少? 思路: 点数才60,而带宽范围也不大,可以进行二分穷举最小带宽,将小于穷举值的边“禁用”,进行求树形图!只要能求得树形图,说明带宽还能继续往上提. 注:如果只有根,即n=1,那么输出其中最小的一条边的带宽.而求树形图比较简单,用朱刘算法O(n*m),网上有模板. 朱刘算法的精髓在于:缩点就缩得彻底,将原来的图都给改掉了.如果产生了环,那就…
UVA 12232 - Exclusive-OR 题目链接 题意:有n个数字.一開始值都不知道,每次给定一个操作,I a v表示确认a值为v,I a b v,表示确认a^b = v,Q k a1 a2 a3 ... ak.表示推断这些数字的异或值是否能确定.能确定就输出值,假设有矛盾就停止 思路:带权并查集,权表示和父结点的异或值,那么多数推断的时候,仅仅要全部数字和他的父结点的异或值的异或值.假设父结点的个数是偶数个.那么依据异或的性质能抵消掉,是能够判定的.假设不为偶数,就是不能判定. 注意…
题目链接:http://acm.hit.edu.cn/hoj/problem/view?id=2739 Time limit : 1 sec Memory limit : 64 M A Chinese postman is assigned to a small town in China to deliver letters. In this town, each street is oriented and connects exactly two junctions. The postma…
题目链接:https://vjudge.net/problem/HDU-1565 方格取数(1) Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 9929    Accepted Submission(s): 3743 Problem Description 给你一个n*n的格子的棋盘,每个格子里面有一个非负数.从中取出若干个数,使得任…
F. Palindrome Problem Description A string is palindrome if it can be read the same way in either direction, for example "maram" is palindrome, while "ammar" is not. You are given a string of n characters, where each character is eithe…