日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CodeForces - 1450E Capitalism(差分约束)

發布時間:2024/4/11 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CodeForces - 1450E Capitalism(差分约束) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目鏈接:點擊查看

題目大意:給出一張 n 個點 m 條邊的無向圖,每個點代表一個人,每個人都有一個權值 a[ i ],每條邊代表朋友關系,規定如果兩個朋友之間,權值較小的人會嫉妒權值較大的人。每個朋友關系之間都會產生一個嫉妒關系,更具體的來說,對于 ( u , v ) 來說,要么 a[ u ] = a[ v ] + 1,要么 a[ v ] = a[ u ] + 1,輸入時已經確定了某些邊的嫉妒關系,現在問如何構造,可以使得 max( a[ i ] ) - min( a[ i ] ) 最大

題目分析:吐槽一下,有的題解只講怎么建邊,而不講為什么要這樣建邊,難道圖論最難想的部分不就是建圖部分嗎?能看到這個題目還需要去學學Floyd怎么寫,學學Floyd怎么判負環嗎?

回到正題,首先因為每條邊都會產生 +1 或 -1 的關系,所以將 a[ i ] 按照奇偶分開,不難看出原圖是一張二分圖,所以題目有解的一個必要條件就是原圖是一張二分圖

然后考慮差分約束系統的模型:(百度百科)

如果一個系統由n個變量和m個約束條件組成,形成m個形如ai-aj≤k的不等式(i,j∈[1,n],k為常數),則稱其為差分約束系統(system of difference constraints)。亦即,差分約束系統是求解關于一組變量的特殊不等式組的方法。

此處的變量對應著題目中的 n 個人,約束條件對應著 m 個朋友關系,首先需要列出不等式組,形式如此:x + y <= k ,分兩種情況討論:

  • | a[ u ] - a[ v ] | = 1:拆去絕對值,得到兩個等式:
  • a[ u ] - a[ v ] = 1,轉換成不等式:
  • a[ u?] - a[ v ] <= 1
  • a[ u?] - a[ v ] >= 1
  • 統一形式:a[ u ] - a[ v ] <= 1,a[ v ] - a[ u ] <= -1
  • a[ v ] - a[ u ] = 1,轉換成不等式:
  • a[ v ] - a[ u ] <= 1
  • a[ v ] - a[ u ] >= 1
  • 統一形式:a[ v?] - a[ u?] <= 1,a[ u?] - a[ v ] <= -1
  • a[ v ] - a[ u ] = 1,轉化成不等式:
  • a[ v ] - a[ u ] <= 1
  • a[ v ] - a[ u ] >= 1
  • 統一形式:a[ v ] - a[ u ] <= 1,a[ u ] - a[ v ] <= -1
  • 對于所有 x - y <= k 的邊,在建圖時建立一條 y -> x 權值為 k 的邊即可

    因為題目需要求的是差分最大值,所以跑最短路然后枚舉起點找出差分最大值即可

    注意到差分約束如果有解的一個充要條件是圖中沒有負環,所以需要特判一下

    代碼:

    //#pragma GCC optimize(2) //#pragma GCC optimize("Ofast","inline","-ffast-math") //#pragma GCC target("avx,sse2,sse3,sse4,mmx") #include<iostream> #include<cstdio> #include<string> #include<ctime> #include<cmath> #include<cstring> #include<algorithm> #include<stack> #include<climits> #include<queue> #include<map> #include<set> #include<sstream> #include<cassert> #include<bitset> using namespace std;typedef long long LL;typedef unsigned long long ull;const int inf=0x3f3f3f3f;const int N=210;int n,m;int maze[N][N],f[N];int find(int x) {return f[x]==x?x:f[x]=find(f[x]); }void merge(int x,int y) {int xx=find(x),yy=find(y);if(xx!=yy)f[xx]=yy; }bool check()//是否為二分圖 {for(int i=1;i<=n;i++)if(find(i)==find(i+n))return false;return true; }bool Floyd()//順便判負環 {for(int k=1;k<=n;k++)for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)maze[i][j]=min(maze[i][j],maze[i][k]+maze[k][j]);for(int i=1;i<=n;i++)if(maze[i][i]<0)return false;return true; }void init() {for(int i=1;i<=n<<1;i++)f[i]=i; }int main() { #ifndef ONLINE_JUDGE // freopen("data.ans.txt","r",stdin); // freopen("data.out.txt","w",stdout); #endif // ios::sync_with_stdio(false);scanf("%d%d",&n,&m);init();for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)maze[i][j]=i==j?0:inf;for(int i=1;i<=m;i++){int u,v,w;scanf("%d%d%d",&u,&v,&w);if(w){maze[u][v]=1;maze[v][u]=-1;}else{maze[u][v]=1;maze[v][u]=1;}merge(u,v+n);merge(v,u+n);}if(!check()||!Floyd())//不是二分圖或者有負環 return 0*puts("NO");int mmax=-inf,st;for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(mmax<maze[i][j]){mmax=maze[i][j];st=i;}puts("YES");printf("%d\n",mmax);for(int i=1;i<=n;i++)printf("%d ",maze[st][i]);puts("");return 0; }


    ?

    總結

    以上是生活随笔為你收集整理的CodeForces - 1450E Capitalism(差分约束)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 亚洲免费在线观看视频 | 亚洲干干干 | 免费a v在线| 国产日韩欧美中文字幕 | 一级α片免费看刺激高潮视频 | 国产无遮挡又黄又爽免费网站 | 国产wwww| 午夜精品久久久久久久久久久久久蜜桃 | 免费看91的网站 | 台湾一级视频 | 一区二区三区www污污污网站 | 一级α片免费看刺激高潮视频 | 女女互磨互喷水高潮les呻吟 | 男人的天堂毛片 | 欧美视频观看 | 女人的天堂av在线 | 夜夜嗨av一区二区三区网页 | 我和岳m愉情xxxⅹ视频 | 日本国产一区二区三区 | 久久高清 | 污免费视频 | 精品黑人一区二区三区在线观看 | 国产精品黄网站 | 精品视频区 | 午夜电影在线播放 | 理论片午午伦夜理片影院99 | 久久黑人 | 久久综合91 | 亚洲一级色 | 国产日韩专区 | 国产aaa视频 | 99久久99久久精品国产片桃花 | 亚洲视频在线免费播放 | 国产又粗又猛又黄又爽视频 | 欧美综合亚洲 | 亚洲精华国产精华精华液网站 | 国产精品人八做人人女人a级刘 | 色婷婷av一区二区三区在线观看 | 极品销魂美女少妇尤物 | 国产精品一二三 | 欧美一区二区三区免费看 | 久久一区二区视频 | 日韩人妻无码精品综合区 | 久久九九爱 | 天天摸天天射 | 91高跟黑色丝袜呻吟动态图 | 重口味av| 久草资源 | 欧美天天 | 性自由色xxxx免费视频 | 免费成人黄色网 | www.在线观看麻豆 | 国产精品无码粉嫩小泬 | 丁香激情婷婷 | 伊人网综合| 久久精品波多野结衣 | 国产美女无遮挡永久免费 | a天堂v| 国产91一区二区三区 | 视频国产在线 | 午夜免费看 | 好吊妞视频在线 | 鲁一鲁av | 国产高清小视频 | 国内外免费激情视频 | 色片网站在线观看 | 99re免费视频精品全部 | 日韩三区四区 | 调教丰满的已婚少妇在线观看 | 国产经典一区 | 偷拍一区二区 | 四虎av影院| 午夜视频福利网站 | 插插插干干干 | 色站在线 | 99精品网站 | 青少年xxxxx性开放hg | 精品国产aⅴ一区二区三区东京热 | 九九热在线视频观看 | 欧美 亚洲 另类 偷偷 自拍 | av成人免费 | 精品国产av一区二区三区 | 亚洲一区二区三区四区五区午夜 | 丁香婷婷亚洲 | 日韩av免费网站 | 日本一区视频在线播放 | 欧美日韩一区二区三区在线电影 | 一二区在线视频 | 黄色大片a级 | 成年人福利| 午夜精品久久久久久久99热黄桃 | 免费无码不卡视频在线观看 | 天天爱综合 | caopor在线| www,四虎 | 天天操夜夜爱 | 日韩欧美精品在线 | 淫岳高潮记小说 | 正在播放一区二区 |