国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

LA 3644 X-Plosives

2019-11-11 03:01:13
字體:
供稿:網(wǎng)友

原題: A secret service developed a new kind of explosive that attain its volatile PRoperty only when a specific association of products occurs. Each product is a mix of two different simple compounds, to which we call a binding pair. If N > 2, then mixing N different binding pairs containing N simple compounds creates a powerful explosive. For example, the binding pairs A+B, B+C, A+C (three pairs, three compounds) result in an explosive, while A+B, B+C, A+D (three pairs, four compounds) does not. You are not a secret agent but only a guy in a delivery agency with one dangerous problem: receive binding pairs in sequential order and place them in a cargo ship. However, you must avoid placing in the same room an explosive association. So, after placing a set of pairs, if you receive one pair that might produce an explosion with some of the pairs already in stock, you must refuse it, otherwise, you must accept it. An example. Lets assume you receive the following sequence: A+B, G+B, D+F, A+E, E+G, F+H. You would accept the first four pairs but then refuse E+G since it would be possible to make the following explosive with the previous pairs: A+B, G+B, A+E, E+G (4 pairs with 4 simple compounds). Finally, you would accept the last pair, F+H. Compute the number of refusals given a sequence of binding pairs. Input The input will contain several test cases, each of them as described below. Consecutive test cases are separated by a single blank line. Instead of letters we will use integers to represent compounds. The input contains several lines. Each line (except the last) consists of two integers (each integer lies between 0 and 10 5 ) separated by a single space, representing a binding pair. Each test case ends in a line with the number ‘-1’. You may assume that no repeated binding pairs appears in the input. Output For each test case, the output must follow the description below. A single line with the number of refusals. Sample Input 1 2 3 4 3 5 3 1 2 3 4 1 2 6 6 5 -1 Sample Output 3

中文: 給你幾組數(shù)a和b,表示a和b會(huì)形成化合物,如果有有超過3個(gè)物品互相形成化合物就會(huì)爆炸。這樣的物品不能裝上車,如果讓你按照給出的順序把這些物品裝上車,有多少組不能夠裝上車?

#include <bits/stdc++.h>using namespace std;int father[100001];int Find(int x){ if(father[x]==x) return x; return father[x]=Find(father[x]);}int main(){ ios::sync_with_stdio(false); int a,b,ans=0; for(int i=1;i<=100000;i++) father[i]=i; while(cin>>a) { if(a!=-1) { cin>>b; int x=Find(a); int y=Find(b); if(x==y) ans++; else father[x]=y; } else { cout<<ans<<endl; ans=0; for(int i=1;i<=100000;i++) father[i]=i; } } return 0;}

解: 裸的并查集判斷環(huán)即可。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 睢宁县| 隆化县| 萍乡市| 邵武市| 珲春市| 博罗县| 铜梁县| 台南市| 东乌珠穆沁旗| 池州市| 太仓市| 江阴市| 香河县| 宜章县| 类乌齐县| 溆浦县| 桃江县| 淮阳县| 霍城县| 富源县| 衡阳县| 滦南县| 英德市| 泗水县| 崇州市| 宁国市| 西贡区| 山丹县| 弋阳县| 金溪县| 普定县| 宁津县| 娄底市| 开平市| 光山县| 天津市| 隆德县| 景洪市| 和林格尔县| 涡阳县| 安庆市|