POJ 2186

//在一張有向無環圖G,圖G會包含很多環(環里面的點是等價的),
//當然可以把環縮成一個點(利用tarjan縮點),
//形成一棵樹,題目要求是求除他以外的點都指向他,也就是只有一個葉子。
//因為一旦有兩個,那么兩個葉子沒有聯系,也就不滿足除他以外所有點指向了。
//那么我們只要在縮點之后的圖中,找出出度為0的點,然后輸出它里面的點就可以了。
#include<iostream>
#include<cstdio>
#include<math.h>
#include<queue>
#include<map>
#include<stdlib.h>
#include<string>
#include<string.h>
#include<algorithm>
using namespace std;
typedef long long LL;
#define PI acos(-1.0)
#define N 10020struct asd{int to;int next;
};
asd q[N*5];
int head[N*5];
int tol;
int n,m;int dfn[N];
int low[N];
int in[N];
int stap[N];
bool vis[N];
int tp,p;
int cnt;
int kr[N],kc[N];void tarjan(int u)
{dfn[u]=low[u]=++tp;stap[++p]=u;vis[u]=1;for(int i=head[u];i!=-1;i=q[i].next){int k=q[i].to;if(!dfn[k]){tarjan(k);low[u]=min(low[u],low[k]);}else if(vis[k]){low[u]=min(low[u],dfn[k]);}}if(dfn[u]==low[u]){int temp;cnt++;while(1){temp=stap[p];vis[temp]=0;in[temp]=cnt;--p;if(temp==u)break;}}
}void add(int a,int b)
{q[tol].to=b;q[tol].next=head[a];head[a]=tol++;
}int main()
{while(~scanf("%d%d",&n,&m)){memset(dfn,0,sizeof(dfn));memset(vis,0,sizeof(vis));tol=0;memset(head,-1,sizeof(head));for(int i=0;i<m;i++){int a,b;scanf("%d%d",&a,&b);add(a,b);}cnt=tp=p=0;for(int i=1;i<=n;i++){if(!dfn[i]){tarjan(i);}}memset(kr,0,sizeof(kr));for(int i=1;i<=n;i++){for(int k=head[i];k!=-1;k=q[k].next){int j=q[k].to;if(in[j]!=in[i]){kr[in[i]]++;}}}int sum=0;int x;for(int i=1;i<=cnt;i++){if(!kr[i]){sum++;x=i;}}if(sum==1){int ans=0;for(int i=1;i<=n;i++){if(in[i]==x)ans+=1;}printf("%d\n",ans);}else{puts("0");}}return 0;
}

轉載于:https://www.cnblogs.com/keyboarder-zsq/p/5934543.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/257183.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/257183.shtml
英文地址,請注明出處:http://en.pswp.cn/news/257183.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用DataGridView數據窗口控件,構建用戶快速輸入體驗

使用DataGridView數據窗口控件&#xff0c;構建用戶快速輸入體驗 在“隨風飄散” 博客里面&#xff0c;介紹了一個不錯的DataGridView數據窗口控件《DataGridView數據窗口控件開發方法及其源碼提供下載》&#xff0c;這種控件在有些場合下&#xff0c;還是非常直觀的。因為&…

pip安裝

下載pip安裝包&#xff0c;解壓。復制到C:\Users\administrator\下&#xff0c;用cmd打開當前文件夾&#xff0c;用Python安裝&#xff0c; Python setup.py install 安裝完之后記得把Python根目錄下的scripts也放在環境變量里。 以上是我pip安裝的成功例子&#xff0c;可能不…

深入剖析授權在WCF中的實現[共14篇]

I、身份&#xff08;Identity&#xff09;與安全主體&#xff08;Security Principal&#xff09; 從兩個重要的概念談起&#xff1a;Identity與Principal[上篇] 從兩個重要的概念談起&#xff1a;Identity與Principal[下篇] WCF的三種授權模式 II、Windows用戶組授權 基于Wind…

sqlserver 查看鎖表,解鎖

查看被鎖表&#xff1a; 代碼如下 復制代碼 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_typeOBJECT spid 鎖表進程 tableName 被鎖表名 [more] 解鎖&#xff1a; 創建一個臨時Table 代碼如下…

json2.js參考

json2.js使用參考 json2.js提供了json的序列化和反序列化方法&#xff0c;能夠將一個json對象轉換成json字符串&#xff0c;也能夠將一個json字符串轉換成一個json對象。<html><head><script type"text/javascript" src"jquery.js"><…

手把手教你用1行代碼實現人臉識別 -- Python Face_recognition

2019獨角獸企業重金招聘Python工程師標準>>> 環境要求&#xff1a; Ubuntu17.10Python 2.7.14環境搭建&#xff1a; 1. 安裝 Ubuntu17.10 > 安裝步驟在這里 2. 安裝 Python2.7.14 (Ubuntu17.10 默認Python版本為2.7.14) 3. 安裝 git 、cmake 、 python-pip # 安裝…

pip安裝的庫導入pycharm中

用pip安裝了一些庫&#xff0c;但pycharm中卻沒有&#xff0c;解決方法是

javascript數組淺談1

最近心血來潮要開始玩博客了&#xff0c;剛好也在看數組這塊內容&#xff0c;第一篇就只好拿數組開刀了&#xff0c;自己總結的&#xff0c;有什么不對的地方還請批評指正&#xff0c;還有什么沒寫到的方面也可以提出來我進行完善&#xff0c;謝謝~~ 首先&#xff0c;大概說說數…

一個關于解決序列化問題的編程技巧

在前一篇文章中我曾經說過&#xff0c;現在正在做一個小小的框架以實現采用統一的API實現對上下文&#xff08;Context&#xff09;信息的統一管理。這個框架同時支持Web和GUI應用&#xff0c;并支持跨線程傳遞和跨域傳遞&#xff08;這里指在WCF服務調用中實現客戶端到服務端隱…

踩坑之路anaconda創建虛擬環境

渾渾噩噩的過了三年渣碩生涯&#xff0c;雖然說自己是搞圖像的&#xff0c;但基本是一些機器視覺的東西&#xff0c;最近突然想好好搞搞深度學習這方面&#xff0c;想著那就先搭搭環境跑個demo吧&#xff0c;經歷了好多莫名其妙的踩坑操作&#xff0c;demo跑的終于沒bug了&…

IP多播技術及其應用

隨著全球互聯網&#xff08;Internet&#xff09;的迅猛發展&#xff0c;上網人數正以幾何級數快速增長&#xff0c;以因特網技術為主導的數據通信在通信業務總量中的比列迅速上升&#xff0c;因特網業務已成為多媒體通信業中發展最為迅速、競爭最為激烈的領域。Internet網絡傳…

【轉載】惱人的函數指針(一)

本文轉載自: http://www.cnblogs.com/AnnieKim/archive/2011/11/20/2255813.html#undefined> 這篇是為了加深記憶所寫。發現&#xff0c;很多知識若不經過反復的琢磨和動手實踐&#xff0c;是很難記得住的。 1&#xff09; 函數指針的初始化。 函數如下&#xff1a; int Com…

dns服務器未響應

昨天還好好的&#xff0c;今天打開電腦顯示DNS服務器為響應。 解決辦法&#xff1a;右擊電腦下方圖標欄——打開Windows任務管理器——服務——服務&#xff08;s&#xff09;——找到DNS client和DHCP client——右擊重啟

php分頁原理

<?php 1.分頁原理所需數據&#xff1a; 總記錄數&#xff1a; $records mysql_num_rows() 每頁顯示&#xff1a; $pagesize 人為定義10 總頁數&#xff1a; $pages $records/$pagesize 當前頁&#xff1a; $page 自己選擇2.分頁的sql語句&#xff1a; SELECT * F…

從客戶端(CourseIssueContent=P財務審計師崗位認證招生簡章BR...)中檢測到有潛在危險的 Request.Form 值。...

說明: 請求驗證過程檢測到有潛在危險的客戶端輸入值&#xff0c;對請求的處理已經中止。該值可能指示危及應用程序安全的嘗試&#xff0c;如跨站點的腳本攻擊。通過在 Page 指令或 配置節中設置 validateRequestfalse 可以禁用請求驗證。但是&#xff0c;在這種情況下&#xff…

ubuntu安裝pytorch鏡像修改及下載

ubuntu安裝pytorch鏡像修改及下載 下載pytorch下載太慢&#xff0c;搞了很長時間&#xff0c;終于改好鏡像能快速下載了&#xff0c;記錄以下。 1.在/home/用戶名/ 下找到/.condarc 文件&#xff0c;可能需要你右擊鼠標顯示隱藏文件才能顯示&#xff0c; 2.把內容修改為清華等鏡…

R--線性回歸診斷(一)

線性回歸診斷--R 【轉載時請注明來源】&#xff1a;http://www.cnblogs.com/runner-ljt/ Ljt 勿忘初心 無畏未來 作為一個初學者&#xff0c;水平有限&#xff0c;歡迎交流指正。 在R中線性回歸&#xff0c;一般使用lm函數就可以得到線性回歸模型&#xff0c;但是得到的模型…

CSS屬性(根據繼承性分為兩類)

一、可繼承屬性 1》所有標簽可繼承&#xff1a; visibility:行高 cursor: 2》內聯標簽可繼承&#xff1a; line-height:行高 color:文字顏色 font-family:文字字體 font-size:文字大小 font-weight:文字加粗 text-decoration:文字下劃線 3》塊級標簽可繼承&#xff1a; text-in…

妙趣橫生的算法--棧和隊列

棧 棧的特點是先進后出&#xff0c;一張圖簡單介紹一下。 #include "stdio.h" #include "math.h" #include "stdlib.h" #define STACK_INIT_SIZE 20 #define STACKINCRE…

win10系統開不了機

電腦裝了雙系統&#xff0c;從ubuntu切回win10系統后&#xff0c;win10系統開不了機&#xff0c;一直轉圈&#xff0c;修復結果是什么C:\WINDOWS\System32\Logfiles\Srt\SrtTrail.txt問題&#xff0c;是了網上的常用方法都沒成功。 最后我的解決方案&#xff1a;強制關機后開機…