前言:知道結果的我,眼淚掉下來······
在比賽的時候想偏了,以為要通過不同元素的組合來判斷該元素能不能放入,現在是悔不當初······
實驗老師要將購置的化學物品裝箱,這些化學物品是簡單化合物,每個化學物品由兩種化學元素組成,用x+y表示,其中x和y是用整數表示的化學元素。裝箱有乙個安全隱患,如果箱子裡任何n個化學物品,正好包含n種元素,那麼將組成乙個容易**的混合物。為了安全,實驗老師每拿到乙個化學物都要進行判斷,如果與已裝箱的化學物形成易爆,就不裝箱,否則就裝箱。假設實驗老師按照輸入的順序進行裝箱,程式設計輸出有多少個化學物沒有裝箱。例如1+2、2+3、1+3,三組三種元素就易爆。再如1+2, 7+2, 4+6, 1+5,四組六種元素不會易爆,但再加5+7就不行,因為1+2, 7+2, 1+5, 5+7就組成四組四種元素,所以5+7就不能裝箱。
輸入要求
資料報含若干行,每行輸入2個整數x,y(0<=x,y<=105)代表乙個由元素x和y組成的化學物品。資料用-1結尾。
化學元素和化學物品的個數不確定,但在正整數範圍之內。
輸出要求
輸出沒有裝箱的化學物數量,並換行
樣例輸入
1 23 4
3 53 1
2 34 1
2 66 5
-1樣例輸出3題意
關鍵點:如果箱子裡任何n個化學物品,正好包含n種元素,那麼將組成乙個容易**的混合物
解題思路
①、統計已經裝了多少種元素n。
②、用對映統計已裝入是元素種類cnt。
③、每次都假設裝入該化學品組。
判斷:已裝的元素種類數是否等於已裝的化學品組數,則不能將該組裝箱。
③、未裝箱數ans = 總化學品組數n - 已裝箱化學品組數cnt。
#include
#define ll long long
using namespace std;
map vis;
intmain()
} cout
}
總結
解題前最好先按題意模擬一遍,不要按自己的意思先入為主,思維固定後在比賽中很難改變過來。
希望能夠將自己的一些學習經驗分享給有需要的人。
我是小鄭,乙個堅持不懈的小白
2020「遠光杯」網路資格賽C 小明的英文作業
題目 小明掌握的英文單詞量不多,所以每次寫英文作業的時候,總是愛重複使用他熟悉的那幾個單詞。為此,他的英文老師規定,每次英文作業重複單詞的使用率不能超過50 也就是說,如果小明的英文作業中有100個英文單詞,那麼只出現1次的單詞不能少於50個。有多組資料 少於10組 每組一行,就是一篇小文章。輸入是...
2020「遠光杯」網路資格賽M 排除危險(並查集)
題目 實驗老師要將購置的化學物品裝箱,這些化學物品是簡單化合物,每個化學物品由兩種化學元素組成,用x y表示,其中x和y是用整數表示的化學元素。裝箱有乙個安全隱患,如果箱子裡任何n個化學物品,正好包含n種元素,那麼將組成乙個容易 的混合物。為了安全,實驗老師每拿到乙個化學物都要進行判斷,如果與已裝箱...
2018 CodeM資格賽 第三題 世界盃
題意 給16支球隊互相勝利的概率,問每支球隊獲勝的概率。世界盃就要開始啦!真真正正的戰鬥從淘汰賽開始,現在我們給出球隊之間的勝負概率,來 每支球隊奪冠的可能性。在接下來的篇幅中,我們將簡單介紹淘汰賽階段的規則。淘汰賽階段的90分鐘常規時間內 含補時階段 進球多的球隊取勝,如果參賽雙方在90分鐘內 含...