bzoj1202 [HNOI2005]狡猾的商人

2024-05-11 23:48

本文主要是介绍bzoj1202 [HNOI2005]狡猾的商人,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目链接:bzoj1202
题目大意:
账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai。当 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个账本是假的。

题解:
正解带权并查集?而我乱搞水过了。。n才小于等于100
我先说下乱搞做法:
直接设f[i][j]表示从第i个月到第j个月(包含第j个月)的总收入。
然后跑一遍像floyd的东西判断是否有矛盾就好了。

带权并查集的话就是经典的那种模型了。
设d[i]表示从第i+1个月到第fa[i]个月的总收入。
维护一下就好了。
主要是题目中是[s,t],是闭区间。我们要把它改成半开半闭,类似(s,t]这样的。
直接输入的时候x--就好了

乱搞版

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;int f[110][110];bool bo[110][110];
int main()
{//freopen("a.in","r",stdin);//freopen("a.out","w",stdout);int T,n,m,x,y,c,k,i,j;scanf("%d",&T);while (T--){scanf("%d%d",&n,&m);memset(f,0,sizeof(f));memset(bo,0,sizeof(bo));for (i=1;i<=m;i++){scanf("%d%d%d",&x,&y,&c);f[x][y]=c;bo[x][y]=true;}bool bk=true;for (k=1;k<=n;k++)for (i=1;i<=k;i++) if (bo[i][k])for (j=k+1;j<=n;j++) if (bo[k+1][j]){if (bo[i][j]) {if (f[i][k]+f[k+1][j]!=f[i][j]) {bk=false;break;}}else f[i][j]=f[i][k]+f[k+1][j],bo[i][j]=true;}if (bk) printf("true\n");else printf("false\n");}return 0;
}

带权并查集版

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;int fa[110],d[110];
int ffind(int x)
{if (x!=fa[x]){int fx=fa[x];fa[x]=ffind(fa[x]);d[x]=d[x]+d[fx];}return fa[x];
}
int main()
{//freopen("a.in","r",stdin);//freopen("a.out","w",stdout);int T,n,m,x,y,c,k,i,j;scanf("%d",&T);while (T--){scanf("%d%d",&n,&m);for (i=0;i<=n;i++) fa[i]=i,d[i]=0;bool bk=true;for (i=1;i<=m;i++){scanf("%d%d%d",&x,&y,&c);x--;int fx=ffind(x),fy=ffind(y);if (fx!=fy){fa[fx]=fy;d[fx]=d[y]+c-d[x];}else if (d[x]-d[y]!=c) bk=false;}if (bk) printf("true\n");else printf("false\n");}return 0;
}

这篇关于bzoj1202 [HNOI2005]狡猾的商人的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/981002

相关文章

这位沉默寡言忠厚老实的商人遇到了哪位神奇女子搭救?

这位沉默寡言忠厚老实的商人遇到了哪位神奇女子搭救? 接下来,我将为你讲述一个关于侠女的故事,她救助了一个落难之人,并发表了许多关于剑侠的独特见解,这些都是前所未有的,简直精彩绝伦。有诗为证: 念珠取来也只是游戏,如果像车中那样就会累人。 听听韦娘的一席话,才知道正直才是真理。 话说在徽州府有一个商人,姓程名德瑜,表字元玉。他性格简默端重,不随便言笑,为人忠厚老成。他专门在川

电商人必看:1个工具,5倍效率,批量处理图片就是这么简单

作为电商运营者或经常处理图片的你,是否厌倦了繁琐的图片编辑工作?今天,我要分享一个实用的解决方案——图片批量处理工具。 神器介绍👇 千鹿设计助手,是一款轻量级、功能非常丰富的设计插件工具合集软件。 拥有多款实用的办公插件,能够极大地提高工作效率。 小编这边也要到了注册码EmGaur:,希望下面的介绍能够帮助到大家! 功能介绍 1.图片压缩 提升网站速度,图片压缩至关重要。这款工

捡石子的商人

从前有一个年轻的商人,在黑暗的山谷里面走夜路。天很黑,他迷路了。他找不到那走出大山的方向,看不到星星和月亮,冷冷的山风飕飕的吹过来,他的头发都立起来了。突然,他听到夜空中传来一个声音,那声音不知道从那里传来的,那声音对他说:“年轻人,地上有石子,捡几颗,天亮了,会有用的。”他感到非常地恐惧,那声音一遍一遍的响起来:“年轻人,地上有石子,捡几颗,天亮了,会有用的。”最后那声音几乎是在哀求了:“年轻

我用十年的时间学习做规规矩矩的商人

我用十年的时间学习做规规矩矩的商人(转)                                          前言:       转眼间,我已离校10年了.总结十年的经历得出“我用十年的时间学习做规规矩矩的商人“的结论.在此,我将写出我这十年的主要经历和心得以期为新人提供一些借鉴,使你们可以比我少走弯路;也欢迎前辈和同辈指正和交流. 第一章:进入工厂   93年毕业后,

2024,淘天六大升级,电商人都准备好了吗?|淘天商品数据采集商品订单接口

淘天各类商品API接口 许多商家一直在问,到了2024年,淘天到底有哪些新改变?商家们又该如何做优化、调整? 我们总结来看,主要在六个方面进行了升级。 第一个是流量获取的逻辑变了。 从曾经的单一的流量入口,升级为多类型的流量渠道和多元化的流量通路。 什么叫多类型流量渠道?除了搜索之外,你的商品推荐端、内容端有没有更多的免费流量。 什么是多元化的流量通路?如小爆款

中国古代商人秘而不宣的经商十诀

【摘要】 兵法云:夫地形者,兵之助也。料敌制胜,计险厄,远近,上将之道也。知此而用战者必胜,不知此而用战者必败。可见地形对作战之重要,为将者不可不察也。经商如作战,商场如战常经商者如指挥千军万马之将帅,智慧的将帅往往会占据有利的地形,最终取得战争的胜利。 一、知地取胜,择地生财 兵法云:夫地形者,兵之助也。料敌制胜,计险厄,远近,上将之道也。知此而用战者必胜,不知此而用战者必败。可见地

电商人必读!发了这么多双十一促销短信可能都发错了

刚刚过去的双十一让众多商家忙的不亦乐乎 单说促销短信,从双十一前几天的预热群发,到活动当天根据销售情况做的临时调整发送,以及最后一波的销量冲刺——看似简单的短信发送包含了从业者精心准备的方案策略 尽管如此,可以毫不客气地说,90%的促销短信都发错了 常规操作流程 一般来说,促销短信的发送通常包含下几个步骤: 1. 文案准备 准备2-3个备选方案,提交给主管/老板做最终选择 2. 宝贝

Java-商人的诀窍

商人的诀窍 Time Limit: 1000 ms  Memory Limit: 65536 KiB Submit  Statistic Problem Description E_star和von是中国赫赫有名的两位商人,俗话说的好无商不奸,最近E_star需要进一批苹果。可是他需要的苹果只有von才有,von的苹果都存在他的传说中很牛叉的仓库里,每个仓库都存了不同种类的苹

实在IPA Pro章鱼数字员工+全自研Chatbot的组合,电商人直呼内行!

2.5亿观看量,累计交易额达到107亿元,这是李佳琦双十一预售直播间的战果,也让无数电商人清楚的意识到,今年的双十一必将迎来又一波硬仗。 而面对即将到来的这场电商盛会,最紧张的人,无疑是需要在一线不分昼夜鏖战的电商小二们,对于他们来说,专注销售转化无疑是最重要的事情,然而他们中的大多数人往往都被大量繁琐重复性的订单咨询等工作所困扰着。 一个人的力量绝对是有限的,所以,在竞争激烈的双

犯罪分子日益狡猾 Web 2.0世界危机四伏

中国IT实验室10月26日消息,据国际报道,隐私将很快成为Web 2.0世界中更大的威胁。   据微软在线服务集团战略发展部门总经理乔纳森称,这是因为Web 2.0从多个站点整合信息的能力会造成用户在隐私方面的预期和实际情况之间的脱节。   他在最近接受采访时说,在Web 2.0世界里,一个真正有趣的变化是,隐私将成为一个与安全同等重要的问题。乔纳森表示,互联网上有大量的信息,共享信息的界线在