獎金 拓撲排序

2021-07-29 21:57:43 字數 1102 閱讀 4552

由於公司在2023年的銷售業務成績優秀,公司總經理心情大好,決定給每位員工發獎金。公司決定以每個人本年在公司的貢獻為標準來計算他們得到獎金的多少。於是總經理下令召開 m 方會談。每位參加會談的代表提出了自己的意見:「我認為員工 a 的獎金應該比 b 高!」。總經理決定要找出一種獎金方案,滿足各位代表的意見,且同時使得總獎金數最少。每位員工獎金最少為100元。 

第一行兩個整數 n 和 m,表示員工總數和代表數;

接下來有 m 行,每行 2 個整數 a 和 b,表示某個代表認為第 a 號員工獎金應該比第 b 號員工高。 

若無法找到合理方案,則輸出「poor xed」;否則輸出乙個數表示最少總獎金。

輸入  [複製]

2 1 

1 2

輸出

201

【資料規模】

80%的資料滿足:n<=1000,m<=2000;

100%的資料滿足:n<=10000,m<=20000。

解析:首先構圖,若存在條件「a的錢比b多」則從b引一條有向指向a;然後拓撲排序,若無法完成排序則表示問題無解(存在環);若可以得到完整的拓撲序列,則按序列順序進行遞推

#include#include#include#include#include#include#include#include#includeusing namespace std;

int a[10001][301]=,into[10001],ans[10001],m,n,money;

void init() //讀入資料,並構建圖,統計入度

}bool topsort() //拓撲排序

if(t==0)return false; //存在環

money+=k*t;k++;

for(i=1;i<=t;i++) //去掉相連的邊

for(j=1;j<=a[ans[i]][0];j++)into[a[ans[i]][j]]--;

} return true;

}int main()

拓撲排序 獎金

由於無敵的凡凡在2005年世界英俊帥氣男總決選中勝出,yali company總經理mr.z心情好,決定給每位員工發獎金。公司決定以每個人本年在公司的貢獻為標準來計算他們得到獎金的多少。於是mr.z下令召開 mm 方會談。每位參加會談的代表提出了自己的意見 我認為員工 aa 的獎金應該比 bb 高!...

SSL 1325獎金 拓撲排序

time limit 1000ms memory limit 65536k 由於無敵的凡凡在2005年世界英俊帥氣男總決選中勝出,yali company總經理mr.z心情好,決定給每位員工發獎金。公司決定以每個人本年在公司的貢獻為標準來計算他們得到獎金的多少。於是mr.z下令召開m方會談。每位參加...

TCS 獎金 拓撲

給每位員工發獎金。參加會談的m位代表提出了自己的意見 我認為員工a的獎金應該比b高!請找出一種獎金方案,滿足各位代表的意見,且同時使得總獎金數最少。每位員工獎金最少為100元。第一行兩個整數n,m,表示員工總數和代表數 以下m行,每行2個整數a,b,表示某個代表認為第a號員工獎金應該比第b號員工高。...