利内罗女士准备来到意大利进行修行。
意大利由 n 个城市和 m 条道路构成,道路是双向的。
到达第 i 个城市时,她可以取得该城市的全部信仰,并获得 ai 点能力提升,但因为在一个城市可以
取得的信仰有限,多次到达同一个城市不会多次提升能力。
意大利对能力也有很严的要求,对于第 i 条道路,只有能力大于等于 bi 的人才能经过。
利内罗女士准备乘坐飞机去往意大利,飞机可以降落在任意城市(即可以在任意城市开始修行),她
想知道自己的能力最多可以成长为多少。
她提出了 Q 次询问,表示当自己初始能力为 qi 时,能力最多可以成长为多少。


Input

第一行三个整数 n, m, Q。接下来一行 n 个非负整数,a1 到 an。
接下来 m 行,每行三个正整数,ui, vi, bi,表示城市 ui 和城市 vi 之间有一条道路。
最后 Q 行,每行一个非负整数 qi。


Output

Q 行,每行一个整数表示答案。

Notes
对于所有数据,满足 n, Q ≤ 105, m ≤ 2 ∗ 105, ai ≤ 104, qi, bi ≤ 109
Task1[20%]

n ≤ 5 , m ≤ 10 , Q =1

Task2[30%]
n ≤ 50 , m ≤ 100 , Q ≤ 5

Task3[40%]

n ≤ 100 , m ≤ 200 , Q ≤5

Task4[50%]
n ≤ 300 , m ≤ 600 , Q ≤ 100

Task5[60%]

n ≤ 1000 , m ≤ 2000 , Q ≤ 10

Task6[100%]
无特殊限制
Subtask1[10pts]
n ≤ 1000 , m = n − 1 , Q ≤ 1000,图保证联通
Subtask2[10pts]
m = n − 1,图保证联通0


题意:对于一个有向图,求一条通过点值最大的路径,通过每条边需要一定大小要求。

思路:第一篇博客就已经声明过的:本人蒟蒻,奔着提高省3去的,所以显然,此题只能暴搜。

据出题人说,此题求连通块加个并查集维护即可,时间复杂度 O((n + m + q)log n)。我当然不会,看诸位大佬懂不懂。

见暴搜代码:

#include<bits/stdc++.h>
using namespace std;
const int inf=0x3f3f3f3f;
int a[],n,m,bi,q,ui[],vi[],b[][],ans,qi,sum=;
bool road[][],place[];
void dfs(int x)
{
if(place[x]==false)
{
ans=ans+a[x];
place[x]=true;
}
if(ans>sum)
sum=ans;
for(int i=;i<=n;i++)
{
if(i==x)
continue;
else if(road[x][i]==true&&ans>=b[x][i])
{
road[x][i]=false;
road[i][x]=false;
dfs(i);
}
}
ans=ans-a[x];
}
int main()
{
cin>>n>>m>>q;
for(int i=;i<=n;i++)
cin>>a[i];
for(int i=;i<=m;i++)
{
cin>>ui[i]>>vi[i]>>bi;
b[ui[i]][vi[i]]=bi;
b[vi[i]][ui[i]]=bi;
}
for( int i=;i<=q;i++)
{
cin>>qi;
ans=qi;
for(int j=;j<=n;j++)
{
memset(road,false,sizeof(road));
memset(place,false,sizeof(place));
for(int i1=;i1<=m;i1++)
{
road[ui[i1]][vi[i1]]=true;
road[vi[i1]][ui[i1]]=true;
} dfs(j);
}
cout<<sum<<endl;
}
fclose(stdin);
fclose(stdout);
return ;
}

好题哉!!!

嵊州普及Day3T4的更多相关文章

  1. 嵊州普及Day1T2

    题意:走迷宫.求走到a[n][n]需要多久. 考场上想的dfs,听老师说最多50分.代码懒得码了,知道是走迷宫就好. 正解:bfs,时间复杂度O(n). 见代码: #include<iostre ...

  2. 嵊州普及Day6T3

    题意:n个点,对于q个询问,有t秒及一个矩形的范围.在此矩形内的数每秒加1,若等于c,则下一秒变为0. 思路:t可能很大,%c+1就可以了.然后一个一个加起来就可以了. 见代码: #include&l ...

  3. 嵊州普及Day6T1

    题意:有一个矩形,由正负整数构成.一个位子的魅力值为相邻的格子,若与邻格同号则减去绝对值,若异号则加上绝对值. 思路:一个格子一个格子计算即可,没什么好说的. 见代码: #include<ios ...

  4. 嵊州普及Day5T4

    题意:两个1,每次可将一个*k,一个*K2,n个问题,问能否达成x,y? 思路:只有将x,y相乘为3次方时,才可能.并且相乘的三次方一定要是x,y的因子. 下面证明:3次方易证,因为对每个k,都会乘三 ...

  5. 嵊州普及Day5T2

    题意:将(w,h)的纸条折成(W,H),最少需几步. 思路:横竖互不干扰,然后最多可折int型一半,拿个函数判断两次比较即可,然后折不了的条件是需要的矩形大于给的矩形. 见代码: #include&l ...

  6. 嵊州普及Day5T1

    题意:有n个商店,自家商店的定价不可高于任何一家商店定价,求自家商店最高定价. 思路:拿个变量打擂台即可,不用解释太多. 见代码: #include<iostream> #include& ...

  7. 嵊州普及Day4T2

    题意:有一个单行走廊,每回合第ai个展柜会冒出来一只鬼,右边尽头有一个人间大炮和向最左传送门(费用均1金币),你需要每回合将所有鬼交换展柜,全部至最右,问若从一到n所有回合结束是需多少金币可射死所有鬼 ...

  8. 嵊州普及Day4T1

    题意:从n个数中选出k个数,使他们任意两数之差都等于m. 思路:任意差值都等于m,不就等价于k个数模m余数相同吗? 然后桶排储蓄一下各数余数即可. 见代码: #include<iostream& ...

  9. 嵊州普及Day4T4

    题意:求最长上升序列长度和方案数. 思路:经典DP,不需什么别的东西,加一个数组储蓄程序数即可,原题300000可能N2会有问题,但问题不大. 见代码: #include<iostream> ...

随机推荐

  1. 吴裕雄 python 神经网络——TensorFlow 花瓣分类与迁移学习(3)

    import glob import os.path import numpy as np import tensorflow as tf from tensorflow.python.platfor ...

  2. 比较好的IT教程网

    MDN最完整的Web标准,Webapi                https://developer.mozilla.org/zh-CN/docs/Web 主要几个比较常用教程网都可以 gitbo ...

  3. Educational Codeforces Round 82 B. National Project

    Your company was appointed to lay new asphalt on the highway of length nn. You know that every day y ...

  4. ie使用已安装的最高版本ie代码,及ie下不要在结尾处写多余的逗号“,”

    ie使用已安装的最高版本ie代码 <meta http-equiv = "X-UA-Compatible" content = "IE=7,IE=9" & ...

  5. 到头来还是逃不开Java - Java13面向对象基础

    面向对象基础 没有特殊说明,我的所有学习笔记都是从廖老师那里摘抄过来的,侵删 引言 兜兜转转到了大四,学过了C,C++,C#,Java,Python,学一门丢一门,到了最后还是要把Java捡起来.所以 ...

  6. 操作系统OS,Python - 多进程(multiprocessing)、多线程(multithreading)

    多进程(multiprocessing) 参考: https://docs.python.org/3.6/library/multiprocessing.html 1. 多进程概念 multiproc ...

  7. 重新理解《务实创业》---HHR计划--以太一堂第三课

    第一节:开始学习 1,面对创业和融资,我们应该如何从底层,理解他们的本质呢?(实事求是) 2,假设你现在要出来融资,通常你需要告诉投资人三件事:我的市场空间很大,我的用户需求很疼,我的商业模式能跑通. ...

  8. icos下配置snake test

    Topo: # $language = "Python" # $interface = "1.0"# Author:Bing Song# Date:6/21/2 ...

  9. Myeclipse创建HTML文件中文显示乱码问题

    例如 运行结果 错误原因 不同浏览器的,编码格式不同 解决方法 运行结果 通常charset的设值我们常用的有gb2312,gbk,utf-8三种,即有三种编码规定: <meta http-eq ...

  10. Linux环境查看Java应用消耗资源情况

    linux线上资源耗时定位 https://www.cnblogs.com/wuchanming/p/7766994.html 1. jps -ml 查看服务器上运行的Java程序 2. jmap 查 ...