洛谷P2194 【HXY烧情侣】
2024-09-05 06:17:39
首先请允许我吐槽一下这个题面
这个题面透露出血腥与暴力,电影院里还藏汽油
所以情侣们,要是想看电影就在家里看吧
毕竟出来容易被烧
在家里看虽然观影效果不如在电影院里
但是,
起码咱生命安全啥的有保障啊
思路:
tarjan
注意方案数是乘法原理
#include <cstdio>
#include <iostream>
using namespace std;
const int N = 1e6+;
const int md = 1e9+;
int n, head[N << ], cnt, w[N], m, dfn[N], low[N], tot, top, stac[N], ans, minn, sum = , geshu;
bool vis[N];
struct node {
int nxt, to;
}e[N << ];
int read() {
int s = , w = ;
char ch = getchar();
while(!isdigit(ch)) {if(ch == '-') w = -; ch = getchar();}
while(isdigit(ch)) {s = s * + ch - ''; ch = getchar();}
return s * w;
}
void add(int x, int y) {
e[++cnt].nxt = head[x];
e[cnt].to = y;
head[x] = cnt;
}
void tarjan(int u) {
dfn[u] = low[u] = ++tot, stac[++top] = u, vis[u] = ;
for(int i = head[u]; i; i = e[i].nxt) {
int v = e[i].to;
if(!dfn[v]) tarjan(v), low[u] = min(low[u], low[v]);
else if(vis[v]) low[u] = min(low[u], dfn[v]);
}
if(dfn[u] == low[u]) {
geshu = , minn = 0x3f3f3f3f;
while(stac[top] != u) {
vis[stac[top]] = ;
if(w[stac[top]] < minn) minn = w[stac[top]], geshu = ;
if(w[stac[top--]] == minn) geshu++;
}
top--, vis[u] = ;
if(w[u] < minn) minn = w[u], geshu = ;
else if(w[u] == minn) geshu++;
ans += minn;
sum = (sum * geshu) % md;
}
}
int main() {
n = read();
for(int i = ; i <= n; i++) w[i] = read();
m = read();
for(int i = , x, y; i <= m; i++) {
x = read(), y = read();
add(x, y);
}
for(int i = ; i <= n; i++)
if(!dfn[i]) tarjan(i);
printf("%d %d\n", ans, sum);
return ;
}
谢谢收看, 祝身体健康!
最新文章
- mysql半同步(semi-sync)源码实现
- beaglebone black 安装QNX过程
- C++算法实源码分析
- hibernate缓存机制详细分析 复制代码 内部资料 请勿转载 谢谢合作
- XML组成结构以及C#通过DTD验证规范性
- Tyvj P1175 机器人
- JS生成随机数的各种函数
- 根据不同的实体及其ID来获取数据库中的数据
- 查看SQL SERVER数据库运行参数和连接数
- DigitalOcean上使用Tornado+MongoDB+Nginx+Supervisor+DnsPod快速搭建个人博客
- Help Viewer 2.2 独立运行
- 面试题52:缺少i的乘积数组
- hibernate配置之<;property name=";hbm2ddl.auto";>;create<;/property>;导致每次创建SessionFactory都清空数据库中的数据
- Best Time to Buy and Sell Stock III 解答
- HDU 5972 Regular Number(ShiftAnd+读入优化)
- FZU 1894 志愿者选拔 单调队列
- jmeter参数化随机取值实现
- [CTSC2008]网络管理 [整体二分]
- MySQL 初识别语句,数据库、表、行的增删改查
- 2017-9-17-MDIO信号线串联小电阻作用【转】