zoukankan      html  css  js  c++  java
  • 2020.1.20

    t1

    【题意】

    给出无向图,1号点有1e8个人,每个人走到一个点就会对其进行破坏,每个点破坏a[i]次后就不能走了。求有好多个人可以通过最短路到达n点(最短路长度为最开始的最短路长度)。

    n,m<=500。

    【题解】

    正反各跑一遍最短路,判断出每条边是否存在于最短路径上,如果是,就加入新图中,新图中将每个点拆成两个,中间流量为a[i],所有边流量为inf。跑最大流即可。

    t2

    【题意】

    有两组,分别有n1和n2个数,每个数中有三个量A,B,C。需要将两组中的数配对,满足①他们在不同组内,②A,B,C中最多有一组互质,求最多可以配出几对。

    n1,n2<=30000。A,B,C<=200。

    【题解】

    考虑到A,B,C很小,n1,n2很大不能直接连边,可以尝试在两组中间加一些中转点才好快速连边进行计算。如果有A,B,C中有两个数有公共质因数就可以配对,所以如果两组中两个点都可以和一个新点连边,则表示他们可以配对,所以将A,B,C分解质因数,用一些点分别表示(A,B)(B,C)(A,C)有质因数为dui[i],dui[j]。200内质因数只有46个所以要加3*46*46个点,组中的点直接向他A,B中所有质因数所代表的点连边即可,流量为1。跑最大流即可。

    t3

    【题意】

    有n个数,现在要选出一些数,满足和最大并且其中不存在两个数,a,b使得a*a+b*b=c*c,gcd(a,b)=1。

    【题解】

    考虑两个数a,b,如果都是偶数,则满足第二个条件,如果都是奇数,则他们的平方和%4余2,所以所有奇数,所有偶数可以共存,只有奇偶有可能不能共存,所以可以按奇偶分成二分图,使用所有数的和减去最小割即可。

  • 相关阅读:
    【C#进阶系列】06 类型和成员基础
    纪中5日T1 1564. 旅游
    纪中17日T1 2321. 方程
    纪中17日T2 2322. capacitor
    纪中10日T1 2313. 动态仙人掌
    纪中14日听课小结 图论 最短路 二分图 差分约束
    一个抓猫的游戏 消遣GAME 持续更新中!
    洛谷P1464 Function  HDU P1579 Function Run Fun
    洛谷P1976 鸡蛋饼
    纪中12日T1 2307. 选择
  • 原文地址:https://www.cnblogs.com/betablewaloot/p/12219837.html
Copyright © 2011-2022 走看看