这… 本来想学习一下Tarjan算法的,没想到码都码好了发现这题不是求强连通分量而是简单的连通分量…图论基础都还给老师了啊啊啊!最后深搜通通解决!

v标记是否被访问过,scc标记每个的祖先(本来想写Tarjan的才弄出这么奇葩个数组名字),w用于最后的统计。

program vijos_p1023;
var map:array[..,..] of longint;
v,w:array[..] of boolean;
n,m,t,i,ans,top:longint;
low,s,scc:array[..] of longint; procedure search(u,a:integer);
var i:integer;
begin
v[u]:=true;
for i:= to n do
if (map[u,i]<>) and (v[i]=false) then
begin
scc[i]:=a;
search(i,a);
end;
end; begin
fillchar(v,sizeof(v),false);
fillchar(w,sizeof(w),false);
fillchar(map,sizeof(map),);
readln(n);
for i:= to n do
begin
read(t);
while t<> do
begin
map[i,t]:=;
read(t);
end;
end;
for i:= to n do
if v[i]=false then
begin
scc[i]:=i;
search(i,i);
end;
for i:= to n do
begin
if w[scc[i]]=false then
begin
w[scc[i]]:=true;
inc(ans);
end;
end;
writeln(ans);
end.

Victoria的舞会3

测试数据 #0: Accepted, time = 0 ms, mem = 916 KiB, score = 10

测试数据 #1: Accepted, time = 0 ms, mem = 912 KiB, score = 10

测试数据 #2: Accepted, time = 0 ms, mem = 912 KiB, score = 10

测试数据 #3: Accepted, time = 0 ms, mem = 916 KiB, score = 10

测试数据 #4: Accepted, time = 0 ms, mem = 916 KiB, score = 10

测试数据 #5: Accepted, time = 0 ms, mem = 912 KiB, score = 10

测试数据 #6: Accepted, time = 0 ms, mem = 912 KiB, score = 10

测试数据 #7: Accepted, time = 0 ms, mem = 916 KiB, score = 10

测试数据 #8: Accepted, time = 0 ms, mem = 916 KiB, score = 10

测试数据 #9: Accepted, time = 0 ms, mem = 916 KiB, score = 10

Accepted, time = 0 ms, mem = 916 KiB, score = 100

0ms秒杀刷正确率什么的还是挺爽的。

[vijos P1023] Victoria的舞会3的更多相关文章

  1. Victoria的舞会2——图的连通性及连通分量

    [Vijos1022]]Victoria的舞会2 Description Victoria是一位颇有成就的艺术家,他因油画作品<我爱北京天安门>闻名于世界.现在,他为了报答帮助他的同行们, ...

  2. Vijos P1023Victoria的舞会3【贪心+DFS求强联通分量】

    链接:Click Me! P1023Victoria的舞会3 Accepted 标签:Victoria的舞会[显示标签] 描写叙述 Victoria是一位颇有成就的艺术家,他因油画作品<我爱北京 ...

  3. [vijos P1626] 爱在心中

    做完Victoria的舞会3,挑了vijos里强连通分量里面难度值最低的题目,也就是这道.先把第一小问做了,纯Tarjan,只是我学的时候的标程是用邻接表的,这题数据小于是用了邻接矩阵,两者之间的切换 ...

  4. 帝都Day6——图论

    //P2O5呢? 一.图的存储: 邻接矩阵:邻接表. 邻接矩阵:n*n的[][],[i][j]节点有边记1没边0 缺点 空间复杂度O(n^2) 占用内存较大(我为什么要把这些东西写到这里呢???) 邻 ...

  5. Vijos P1063 迎春舞会之交谊舞 DP

    题目链接:https://vijos.org/p/1063 题意:有n(n <= 100)行,每行有2*i-1个可显字符'#'与'-',组成一个倒三角形,问由'-'组成的最大三角形的'-'的个数 ...

  6. Vijos P1061 迎春舞会之三人组舞 DP

    题目链接:https://vijos.org/p/1061 n个人选出3*m人,排成m组,每组3人. 站的队形——较矮的2个人站两侧,最高的站中间. 从对称学角度来欣赏,左右两个人的身高越接近,则这一 ...

  7. Vijos P1062 迎春舞会之交谊舞

    题目链接:https://vijos.org/p/1062 题意:输入n(n <= 1500)个女生左边有多少个男生.每个女生都和她左边最近的男生跳舞. 输出每个女生到可以与之跳舞的男生之间有几 ...

  8. 【最短路】Vijos P1022Victoria的舞会2

    题目链接: https://vijos.org/p/1022 题目大意: 给一张N个点的有向图,求有几块强连通分量.(N<=200) 题目思路: [动态规划] n比较小,可以用floyd暴力把每 ...

  9. 【模拟】Vijos P1062 迎春舞会之交谊舞

    题目链接: https://vijos.org/p/1062 题目大意: 一群男女站成一排,一男一女配对,女的只找左边第一个空闲的男生,给定前n个女生左边的额男生个数,问前n个女生到男伴之间共有几个男 ...

随机推荐

  1. C++中构造函数调用构造函数

    今天想做道矩阵的题目时,却卡在一些编程细节上了,找了好久才发现原来是在构造函数处出了问题,然后上网百度了下,发现这篇文章说得很好:从一道题谈C++中构造函数调用构造函数,很棒! 还补充一点: 看来自己 ...

  2. white-space: nowrap

    CSS:需要加上宽度(width:100px).超出隐藏(overflow:hidden;).强制在同一行显示(white-space: nowrap;).省略号(text-overflow:elli ...

  3. 开启所有PHP错误!无论在任何时候

    开发的时候,会屏蔽所有错误,但是有时候排查太蛋疼, 下面代码粘贴到控制器头部,开所有错误! 不可阻挡   ini_set('display_errors','1'); restore_error_ha ...

  4. netbeans for php常用快捷键

    文本编辑 复制当前行到上一行/下一行ctl+shf+up 移动当前行到上一行/下一行shf+alt+left/right/down/up 删除当前行ctl+E 生成下一行shf+enter(回车) 大 ...

  5. commonJS — DOM操作(for DOM)

    for DOM github: https://github.com/laixiangran/commonJS/blob/master/src/forDOM.js 代码 /** * Created b ...

  6. android UI库

    https://github.com/wasabeef/awesome-android-ui List of Android UI/UX Libraries A curated list of awe ...

  7. SQL实现数组的功能

    今天在工作遇到了一个问题,需要往表中添加数量不小而且没有规律的的数据.思考后我想到了使用高级语言中的数组功能解决. 由于SQL Server并没有数组类型,ANSI SQL-92标准中并没有任何有关数 ...

  8. 小心Windows7的UTF-8代码页

    目录 第1章小心Windows7的UTF-8代码页    1 1.1 UTF-16与UTF-8相互转换    1 1.1.1 使用Windows API    1 1.1.2 自己编码    1 1. ...

  9. java 异常2

    自定义异常类: import java.util.Scanner; /** * Created by lenovo on 2016/8/12. */ class NoMoneyException ex ...

  10. 【CodeVS 1004】四子连棋

    http://blog.csdn.net/u013598409/article/details/43924465 相比于一年半前,代码的掌控能力强了许多. #include <cstdio> ...