吃糖的時間

2021-09-11 06:51:42 字數 857 閱讀 8024

題目:

**如下:

#includeusing namespace std;

#define max 100005

int n,p,c,m;

vectora[max];

bool vis[max];

struct people

people(int a,int b,int c):num2(a),get2(b),eat2(c){}

}people;

int dfs(int num,int get,int eat)

} }return people.eat2;

}int main()

vis[c] = true;

cout << dfs(c,1,m + 1) << endl;

return 0;

}

一開始想用二維陣列來儲存小朋友之間的關係,但這裡n要到100000,用二位陣列作為全域性變數肯定要爆,所以我想到了使用vector來記錄小朋友之間的關係,這可以節約很多空間。vis[i]來代表糖是否已經傳到編號為i的小朋友手中,隨後就可以使用bfs來解決這個問題了,每次往佇列放乙個結構體,結構體有小朋友的編號,小朋友拿到糖的時間,以及小朋友吃了糖的時間,最後輸出佇列中最後乙個小朋友的吃了糖的時間就可以了,因為當最後乙個小朋友吃完糖之後所有小朋友的糖也就全部吃完了。

演算法練習 吃糖

時間限制 2 s 記憶體限制 128 mb 題目描述 某人買了n兜糖果,第i兜有ai塊糖。此人把所有這些糖果用乙個數字標記起來 他這樣標記這些糖,第一袋糖用用數字1到a1,第二袋糖用數字a1 1到a1 a2,如此類推。如果還沒明白看樣例可以更加明確此人的意圖.這個人不想一口氣把這些糖全吃掉,他用記事...

吃糖果問題

hoho,終於從speakless手上贏走了所有的糖果,是gardon吃糖果時有個特殊的癖好,就是不喜歡將一樣的糖果放在一起吃,喜歡先吃一種,下一次吃另一種,這樣 可是gardon不知道是否存在一種吃糖果的順序使得他能把所有糖果都吃完?請你寫個程式幫忙計算一下。第一行有乙個整數t,接下來t組資料,每...

問題 A 吃糖果

名名的媽媽從外地出差回來,帶了一盒好吃又精美的巧克力給名名 盒內共有 n 塊巧克力,20 n 0 媽媽告訴名名每天可以吃一塊或者兩塊巧克力。假設名名每天都吃巧克力,問名名共有多少種不同的吃完巧克力的方案。例如 如果n 1,則名名第1天就吃掉它,共有1種方案 如果n 2,則名名可以第1天吃1塊,第2天...