E 托公尺的飲料

2021-08-20 10:32:18 字數 1424 閱讀 4206

題目鏈結

可愛的小托公尺得到了n瓶飲料.

但他不小心把開蓋的工具弄丟了,所以他只能利用飲料瓶來開蓋.

已知第i個瓶子的品牌為ai,且其能開啟bi品牌的瓶子.

問有幾瓶飲料托公尺無法喝到.

被用於開啟飲料瓶的瓶子不一定需要被開啟.

乙個瓶子不能開啟其本身.

輸入描述:

第一行乙個整數n,表示飲料的瓶數.

接下來n行,每行兩個整數ai,bi.

輸出描述:

輸出一行乙個整數,表示小托公尺無法喝到的飲料瓶數.

示例1輸入

4 1 1

2 2

3 3

4 4輸出

示例2輸入

4 1 2

2 3

3 4

4 1輸出

備註:1≤n≤100

1≤ ai,bi≤ 1000

思路瓶子不能開啟自己,就兩個for迴圈遍歷不同瓶子,看能否喝掉。

寫的時候一直wa,我是先把不同的瓶子統計一下個數,然後乙個for遍歷1 - n如果這瓶飲料存在,而且可以消除,就記錄一下。看了別人ac**都是用for迴圈乙個乙個判斷。又讀了一遍題,我把重點放在了牌子飲料開啟對應的牌子飲料,但是題目的意思是瓶子不能開啟自己。這就產生了分歧。

對於這個樣例:

4

1 11 1

1 1

1 1

我的結果是4,ac**是0。

總結剛結束的省賽,會做的題都是暴力加暴力,但是今天寫題上來就沒考慮暴力,以後一定要記得先考慮暴力

ac

#include

#define n 100005

using

namespace

std;

int a[n], b[n];

int main()

int ans = 0;

for (int i = 0; i < n; i++) }}

cout

<< n - ans << endl;

return

0;}

error_code
#include

#define n 10005

using

namespace

std;

int a[n], b[n];

int main ()

int ans = 0;

for (int i = 1; i < n; i++)

if (b[i] && a[i]) ans += a[i];

cout

<< n - ans << endl;

}return

0;}

牛客網 托公尺的飲料

被一道如此弱智的題卡住了,真是尬住。想的太多,唉 可愛的小托公尺得到了n瓶飲料.但他不小心把開蓋的工具弄丟了,所以他只能利用飲料瓶來開蓋.已知第i個瓶子的品牌為a i 且其能開啟b i 品牌的瓶子.問有幾瓶飲料托公尺無法喝到.被用於開啟飲料瓶的瓶子不一定需要被開啟.乙個瓶子不能開啟其本身.第一行乙個...

牛客練習賽19 E托公尺的飲料

托公尺的飲料 時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 好了,現在是小托公尺的故事啦 可愛的小托公尺得到了n瓶飲料.但他不小心把開蓋的工具弄丟了,所以他只能利用飲料瓶來開蓋.已知第i個瓶子的品牌為a i 且其能...

托公尺的遊戲

題目 托公尺有一棵有根樹t tt,樹根為1 11,每輪他會在剩下的子樹中等概率乙個點 u uu,砍掉u uu的子樹 包含u uu 如果樹上的點都被砍光了,遊戲結束.求出這個遊戲進行的期望輪數,可以證明這個數一定是有理數,設他為 a b frac ba 你需要告訴他乙個整數x xx滿足 x b a m...