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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

BZOJ1202 [HNOI2005]狡猾的商人 【并查集】

發布時間:2025/3/21 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BZOJ1202 [HNOI2005]狡猾的商人 【并查集】 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1202: [HNOI2005]狡猾的商人

Time Limit:?10 Sec??Memory Limit:?162 MB
Submit:?4180??Solved:?2015
[Submit][Status][Discuss]

Description

刁姹接到一個任務,為稅務部門調查一位商人的賬本,看看賬本是不是偽造的。賬本上記錄了n個月以來的收入情況,其中第i 個月的收入額為Ai(i=1,2,3...n-1,n), 。當 Ai大于0時表示這個月盈利Ai 元,當 Ai小于0時表示這個月虧損Ai 元。所謂一段時間內的總收入,就是這段時間內每個月的收入額的總和。 刁姹的任務是秘密進行的,為了調查商人的賬本,她只好跑到商人那里打工。她趁商人不在時去偷看賬本,可是她無法將賬本偷出來,每次偷看賬本時她都只能看某段時間內賬本上記錄的收入情況,并且她只能記住這段時間內的總收入。 現在,刁姹總共偷看了m次賬本,當然也就記住了m段時間內的總收入,你的任務是根據記住的這些信息來判斷賬本是不是假的。

Input

第一行為一個正整數w,其中w < 100,表示有w組數據,即w個賬本,需要你判斷。每組數據的第一行為兩個正整數n和m,其中n < 100,m < 1000,分別表示對應的賬本記錄了多少個月的收入情況以及偷看了多少次賬本。接下來的m行表示刁姹偷看m次賬本后記住的m條信息,每條信息占一行,有三個整數s,t和v,表示從第s個月到第t個月(包含第t個月)的總收入為v,這里假設s總是小于等于t。

Output

包含w行,每行是true或false,其中第i行為true當且僅當第i組數據,即第i個賬本不是假的;第i行為false當且僅當第i組數據,即第i個賬本是假的。

Sample Input

2
3 3
1 2 10
1 3 -5
3 3 -15
5 3
1 5 100
3 5 50
1 2 51

Sample Output

true
false


我圖形思維還是太弱了QAQ

短短并查集查了那么久

由題,只有當我們直接或間接得到兩個相同的區間信息不同時為false

按照前綴和的思想,區間和[a,b] = z可以寫成s[b] - s[a - 1] = z

這樣子我們就轉化為了兩個點之間的關系,每當我們得出兩點的關系時,我們將它們所在集合合并

兩點關系確定,當且僅當兩點在同一并查集中

我們再維護每一點到所在并查集根節點的距離表示s[a] - s[root]

這樣當我們需要b - a的時,只需將d[b] - d[a]


#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define LL long long int #define REP(i,n) for (int i = 1; i <= (n); i++) #define fo(i,x,y) for (int i = (x); i <= (y); i++) #define Redge(u) for (int k = head[u]; k != -1; k = edge[k].next) using namespace std; const int maxn = 105,maxm = 100005,INF = 1000000000; inline int read(){int out = 0,flag = 1;char c = getchar();while (c < 48 || c > 57) {if (c == '-') flag = -1; c = getchar();}while (c >= 48 && c <= 57) {out = out * 10 + c - 48; c = getchar();}return out * flag; } int pre[maxn],d[maxn],n,m; inline int find(int u){if (u == pre[u]) return u;int fa = find(pre[u]);d[u] += d[pre[u]];pre[u] = fa;return fa; } void init(){n = read(); m = read();for (int i = 0; i <= n; i++) pre[i] = i,d[i] = 0; } int main() {int T = read(),a,b,fa,fb,z;bool flag;while (T--){init(); flag = true;while (m--){a = read() - 1; b = read(); z = read(); fa = find(a); fb = find(b);if (fa != fb){d[fa] = d[b] - d[a] - z;pre[fa] = fb;}else if (d[b] - d[a] != z) flag = false;}if (flag) printf("true\n");else printf("false\n");}return 0; }

轉載于:https://www.cnblogs.com/Mychael/p/8282808.html

總結

以上是生活随笔為你收集整理的BZOJ1202 [HNOI2005]狡猾的商人 【并查集】的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 色啪视频 | 久久精品人妻一区二区三区 | 欧美日韩亚洲二区 | 黄色一级片. | 欧美精品一级在线观看 | 亚洲国产欧美精品 | 逼特逼视频在线观看 | 久久久av免费 | 国产精品久久久久不卡 | 中文字幕久久久 | 亚洲最大中文字幕 | 成人小网站 | 午夜在线视频观看 | 天天摸日日摸狠狠添 | 一级性生活毛片 | 色视频网站在线观看 | 亚洲av高清一区二区三区 | 日本公妇乱淫免费视频一区三区 | 亚洲小说区图片区都市 | 美女网站免费黄 | 蝌蚪久久 | 亚洲图片中文字幕 | 最新最近中文字幕 | 2017天天干 | 精品一区国产 | 美女黄站 | 色网址在线 | 中国亚洲女人69内射少妇 | 91.xxx.高清在线 | 国产免费毛卡片 | 免费精品在线观看 | 色先锋av资源 | 国产懂色av | 婷婷五月综合缴情在线视频 | 欧美黄色性 | 中国一级特黄毛片大片 | 丁香啪啪综合成人亚洲 | 日本一区二区三区四区五区 | 五月天色婷婷综合 | 99久久久国产精品无码网爆 | 日本综合视频 | 黄色一级视频片 | 成人动漫视频在线观看 | 日韩精品自拍 | tube国产麻豆 | 亚洲激情视频网 | 日本亚洲欧美在线 | 久久精品一 | 天天黄色片 | 欧美成人免费播放 | 欧美一区二区在线免费观看 | 夫妻性生活黄色片 | 国产成人毛毛毛片 | 天堂在线中文 | 国产日韩一区二区三免费高清 | 日韩第一页在线观看 | 天天做天天躁天天躁 | 69色综合 | 极品久久久| 91亚瑟视频 | 国产福利免费看 | 日韩乱码人妻无码中文字幕 | 青青青视频免费观看 | 九九热视频免费 | 日本系列第一页 | 日韩精品在线视频观看 | 婷婷色小说 | 男女搞鸡网站 | 成人中文字幕在线观看 | 自拍偷拍第八页 | 四虎婷婷 | 国产熟女高潮一区二区三区 | 日韩精品自拍 | 大香蕉精品一区 | 夜夜夜综合 | 密臀av一区二区 | 国产精品一区二区电影 | 午夜桃色| 日本www网站 | 999国产在线 | 极品久久久 | 激情综合色 | 黄色一级片黄色一级片 | 91亚色视频| 少妇中文字幕 | 国产毛片在线视频 | 99热99精品| 亚洲777| 国产成年人免费视频 | 在线免费成人 | 岛国av电影在线观看 | 超碰在线亚洲 | 人人爱爱 | 人妻体内射精一区二区三区 | 日本伦理中文字幕 | 一卡二卡三卡 | 国产精品99久久久久久久久久久久 | www天堂av| 亚洲xxxx18 |