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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

AtCoder Regular Contest 063 E - Integers on a Tree 构造 + 二分图染色

發(fā)布時(shí)間:2023/12/4 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 AtCoder Regular Contest 063 E - Integers on a Tree 构造 + 二分图染色 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

傳送門

題意:

給你一顆nnn個(gè)點(diǎn)的樹,初始的時(shí)候某些點(diǎn)有權(quán)值pip_ipi?,現(xiàn)在你需要給沒給定的點(diǎn)賦一個(gè)權(quán)值,使得任意相鄰點(diǎn)權(quán)值之差的絕對值等于111,若無解輸出NoNoNo

1≤n≤1e5,1≤k≤n,0≤pj≤1e51\le n\le 1e5,1\le k\le n,0\le p_j\le 1e51n1e5,1kn,0pj?1e5

思路:

考慮以定一個(gè)根,先遞歸兒子,求出兒子能取到的權(quán)值范圍,讓后根據(jù)兒子的范圍來確定當(dāng)前點(diǎn)的范圍,不合法的話就直接輸出NoNoNo即可。

如果合法的話,顯然從我們之前選定的根開始隨意的取一個(gè)區(qū)間內(nèi)的合法值一定可以構(gòu)造出答案。

#include<bits/stdc++.h> #define X first #define Y second #define Mid (tr[u].l+tr[u].r>>1) #define pb push_back using namespace std;const int N=1000010,INF=0x3f3f3f3f,mod=1e9+7; typedef long long LL;int n,m; vector<int>v[N]; int a[N],col[N]; int l[N],r[N];void dfs_col(int u,int fa,int c) {col[u]=c;for(auto x:v[u]) {if(x==fa) continue;dfs_col(x,u,!c);} }void dfs(int u,int fa) {for(auto x:v[u]) {if(x==fa) continue;dfs(x,u);l[u]=max(l[u],l[x]-1);r[u]=min(r[u],r[x]+1);}if(l[u]>r[u]) {puts("No");exit(0);} }void dfs_ans(int u,int fa,int val) {a[u]=val;for(auto x:v[u]) {if(x==fa) continue;if(val-1>=l[x]&&val-1<=r[x]) dfs_ans(x,u,val-1);else dfs_ans(x,u,val+1);} }void solve() {scanf("%d",&n);for(int i=1;i<=n-1;i++) {int a,b; scanf("%d%d",&a,&b);v[a].push_back(b);v[b].push_back(a);}for(int i=1;i<=n;i++) l[i]=-INF,r[i]=INF;memset(a,-1,sizeof(a));scanf("%d",&m);for(int i=1;i<=m;i++) {int aa,b; scanf("%d%d",&aa,&b);a[aa]=b;l[aa]=b; r[aa]=b;}for(int i=1;i<=n;i++) if(a[i]>=0) {dfs_col(i,0,a[i]%2);break;}for(int i=1;i<=n;i++) if(a[i]>=0&&(a[i]%2!=col[i])) {puts("No");return;}dfs(1,0);dfs_ans(1,0,l[1]);puts("Yes");for(int i=1;i<=n;i++) printf("%d\n",a[i]);puts(""); }int main() {int _=1;while(_--) {solve();}return 0; }

總結(jié)

以上是生活随笔為你收集整理的AtCoder Regular Contest 063 E - Integers on a Tree 构造 + 二分图染色的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 性欧美巨大 | 亚洲精品国产成人 | 国产免费一级视频 | 欧美激情网 | 成人黄色网页 | 国产福利一区二区三区在线观看 | 高清国产午夜精品久久久久久 | 福利视频午夜 | 91成人短视频在线观看 | 成人av电影网站 | 色香影视| 久草成人网| 99视频在线免费观看 | 成人在线免费电影 | 天天操穴| 久久二 | 嫩模一区二区三区 | 免费在线h | 日日噜噜噜噜久久久精品毛片 | 手机天堂av | 亚洲国产成人在线 | 久久久久亚洲av成人网人人软件 | 男人干女人视频 | 黄色电影在线视频 | 可以免费看的黄色网址 | 91原创视频在线观看 | 国产精品久久久久久久久绿色 | 日本高清不卡二区 | 亚洲男女在线观看 | 婷婷射丁香 | 日韩在线综合 | 91精品国产91久久久 | 欧美不卡一区二区三区 | 3级av| 伊人色在线视频 | a毛毛片 | 香蕉污视频 | 爱爱视频欧美 | 国产大学生视频 | 亚洲情趣 | 国产区一区二区三区 | 欧美日性视频 | av黄色免费观看 | 国精品无码一区二区三区 | 精品视频免费播放 | 91av国产在线 | 国产九九精品视频 | 网站在线播放 | 亚洲三级在线视频 | 性――交――性――乱睡觉 | 欧美亚洲综合久久 | 日本丰满大乳奶做爰 | 啪啪五月天 | 欧美精品一区二区三区久久久竹菊 | 两个人看的www视频免费完整版 | 成人午夜淫片100集 伊人久久国产 | 国产剧情在线一区 | 黄色欧美在线观看 | 久久青青草原亚洲av无码麻豆 | 99er精品视频| 在线毛片观看 | 日韩黄网站 | 久久国产一级片 | 国内偷拍久久 | 亚洲欧美日韩在线 | 日本超碰在线 | 少妇又紧又色 | 成人av番号网 | 国产无遮挡又黄又爽又色 | 亚洲成人免费看 | 一级大片在线观看 | 理想之城连续剧40集免费播放 | 久久久久性 | 2025韩国大尺度电影 | 日批视频在线看 | 青青操在线 | 91麻豆免费视频 | 精品一区二区三区免费视频 | 国产精品美女久久久久图片 | 国产ts在线播放 | 日韩av动漫 | 中文字幕系列 | 国产羞羞 | 欧美激情欧美激情在线五月 | 国产精品二区一区二区aⅴ污介绍 | 日本成人免费网站 | 又爽又黄又无遮挡 | 亚洲午夜精品在线观看 | 鲁在线视频 | 国产精品自慰网站 | 亚洲妇熟xx妇色黄蜜桃 | 人妻熟女一区二区aⅴ水野 91在线观看视频 | 麻豆一区二区 | 中文字幕第2页 | 亚洲综合影视 | 国产精品9| 久久爱资源网 | 免费一区二区视频 | 综合伊人久久 |