预告:金牌教练蔺洋开讲

2020年5月,CCF NOI Online培训正式推出!第一期,两位NOI钻石教练——长沙市雅礼中学朱全民和中山市中山纪念中学宋新波作为NOI Online培训的开路先锋,针对顺序结构进行细致的讲解,为零基础学习者给予指导,被称为“最正的信奥培训课程”。一周时间,培训视频播放量逾3万次。这个5月,让我们相约每周二,一起分享CCF带给Oier的福利。 第二期NOI Online培训将于5月12日和...

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 713 )

信息学奥赛一本通T1355:栈 字符串匹配问题

【题目描述】字符串中只含有括号 (),[],<>,{},判断输入的字符串中括号是否匹配。如果括号有互相包含的形式,从内到外必须是<>,(),[],{},例如。输入: [()] 输出:YES,而输入([]),([)]都应该输出NO。【输入】第一行为一个整数n,表示以下有多少个由括好组成的字符串。接下来的n行,每行都是一个由括号组成的长度不超过255的字符串。【输出】在输出文件

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 1404 )

信息学奥赛一本通T1354:栈 括弧匹配检验

【题目描述】假设表达式中允许包含两种括号:圆括号和方括号,其嵌套的顺序随意,如 ([]()) 或 [([][])] 等为正确的匹配,[(]) 或([]() 或 (()) 均为错误的匹配。【输入】输入仅一行字符(字符个数小于255)。【输出】匹配就输出 “OK” ,不匹配就输出“Wrong”。【输入样例】[(])【输出样例】Wrong【源程序】 

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 941 )

信息学奥赛一本通T1353:栈 表达式括号匹配

【题目描述】假设一个表达式有英文字母(小写)、运算符(+,—,*,/)和左右小(圆)括号构成,以“@”作为表达式的结束符。请编写一个程序检查表达式中的左右圆括号是否匹配,若匹配,则返回“YES”;否则返回“NO”。表达式长度小于255,左圆括号少于20个。【输入】一行数据,即表达式。【输出】一行,即“YES” 或“NO”。【输入样例】2*(x+y)/(1-x)@【输出样例】YES【源程序】 

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 1442 )

信息学奥赛一本通T1352:拓扑排序与关键路径 奖金

【题目描述】由于无敌的凡凡在2005年世界英俊帅气男总决选中胜出,Yali Company总经理Mr.Z心情好,决定给每位员工发奖金。公司决定以每个人本年在公司的贡献为标准来计算他们得到奖金的多少。于是Mr.Z下令召开m方会谈。每位参加会谈的代表提出了自己的意见:“我认为员工a的奖金应该比b高!”Mr.Z决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位员工奖金最少为100元

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 1265 )

信息学奥赛一本通T1351:最小生成树 家谱树

【题目描述】有个人的家族很大,辈分关系很混乱,请你帮整理一下这种关系。给出每个人的孩子的信息。输出一个序列,使得每个人的后辈都比那个人后列出。【输入】第1行一个整数N(1≤N≤100),表示家族的人数;接下来N行,第I行描述第I个人的儿子;每行最后是0表示描述完毕。【输出】输出一个序列,使得每个人的后辈都比那个人后列出;如果有多解输出任意一解。【输入样例】5【输出样例】2 4 5 3 1【源程序】

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 16:20
  • 阅读 ( 1098 )

信息学奥赛一本通T1350:最小生成树 最短网络

【题目描述】农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场。当然,他需要你的帮助。约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了用最小的消费,他想铺设最短的光纤去连接所有的农场。你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农场并所用光纤最短的方案。每两个农场间的距离不会超过100000。【输入】第一行:农场的个

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 10:20
  • 阅读 ( 783 )

信息学奥赛一本通T1348:最小生成树 城市公交网建设问题

【题目描述】有一张城市地图,图中的顶点为城市,无向边代表两个城市间的连通关系,边上的权为在这两个城市之间修建高速公路的造价,研究后发现,这个地图有一个特点,即任一对城市都是连通的。现在的问题是,要修建若干高速公路把所有城市联系起来,问如何设计可使得工程的总造价最少?【输入】n(城市数,1<≤n≤100)e(边数)以下e行,每行3个数i,j,wij,表示在城市i,j之间修建高速公路的造价。【输

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 10:20
  • 阅读 ( 1098 )

信息学奥赛一本通T1349:最小生成树 最优布线问题

【题目描述】学校有n台计算机,为了方便数据传输,现要将它们用数据线连接起来。两台计算机被连接是指它们有数据线连接。由于计算机所处的位置不同,因此不同的两台计算机的连接费用往往是不同的。当然,如果将任意两台计算机都用数据线连接,费用将是相当庞大的。为了节省费用,我们采用数据的间接传输手段,即一台计算机可以间接的通过若干台计算机(作为中转)来实现与另一台计算机的连接。现在由你负责连接这些计算机,任务是

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 10:20
  • 阅读 ( 686 )

信息学奥赛一本通T1347:并查集 格子游戏

【题目描述】Alice和Bob玩了一个古老的游戏:首先画一个n × n的点阵(下图n = 3)接着,他们两个轮流在相邻的点之间画上红边和蓝边:直到围成一个封闭的圈(面积不必为1)为止,“封圈”的那个人就是赢家。因为棋盘实在是太大了(n ≤ 200),他们的游戏实在是太长了!他们甚至在游戏中都不知道谁赢得了游戏。于是请你写一个程序,帮助他们计算他们是否结束了游戏?【输入】输入数据第一行为两个整数n和

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 10:20
  • 阅读 ( 706 )

信息学奥赛一本通T1346:并查集 亲戚

【题目描述】或许你并不知道,你的某个朋友是你的亲戚。他可能是你的曾祖父的外公的女婿的外甥女的表姐的孙子。如果能得到完整的家谱,判断两个人是否是亲戚应该是可行的,但如果两个人的最近公共祖先与他们相隔好几代,使得家谱十分庞大,那么检验亲戚关系实非人力所能及。在这种情况下,最好的帮手就是计算机。为了将问题简化,你将得到一些亲戚关系的信息,如Marry和Tom是亲戚,Tom和Ben是亲戚,等等。从这些信息

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-12 10:20
  • 阅读 ( 781 )

信息学奥赛一本通T1345:最短路径算法 香甜的黄油

【题目描述】农夫John发现做出全威斯康辛州最甜的黄油的方法:糖。把糖放在一片牧场上,他知道N(1≤N≤500)只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油。当然,他将付出额外的费用在奶牛上。农夫John很狡猾。像以前的巴甫洛夫,他知道他可以训练这些奶牛,让它们在听到铃声时去一个特定的牧场。他打算将糖放在那里然后下午发出铃声,以至他可以在晚上挤奶。农夫John知道每只奶牛都在各自喜欢的牧场(

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 16:20
  • 阅读 ( 854 )

信息学奥赛一本通T1343:最短路径算法 牛的旅行

【题目描述】农民John的农场里有很多牧区。有的路径连接一些特定的牧区。一片所有连通的牧区称为一个牧场。但是就目前而言,你能看到至少有两个牧区不连通。现在,John想在农场里添加一条路径 ( 注意,恰好一条 )。对这条路径有这样的限制:一个牧场的直径就是牧场中最远的两个牧区的距离 ( 本题中所提到的所有距离指的都是最短的距离 )。考虑如下的两个牧场,图1是有5个牧区的牧场,牧区用“*”表示,路径用

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 16:20
  • 阅读 ( 779 )

信息学奥赛一本通T1344:最短路径算法 最小花费

【题目描述】在n个人中,某些人的银行账号之间可以互相转账。这些人之间转账的手续费各不相同。给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。【输入】第一行输入两个正整数n,m,分别表示总人数和可以互相转账的人的对数以下m行每行输入三个正整数x,y,z,表示标号为x的人和标号为y的人之间互相转账需要扣除z%的手续费 (z<100)。最后一行

  • 0
  • 1
  • 轩爸
  • 发布于 2020-05-11 16:20
  • 阅读 ( 899 )

信息学奥赛一本通T1342:最短路径算法 最短路径问题

【题目描述】平面上有n个点(n≤100),每个点的坐标均在-10000~10000之间。其中的一些点之间有连线。若有连线,则表示可从一个点到达另一个点,即两点间有通路,通路的距离为两点间的直线距离。现在的任务是找出从一点到另一点之间的最短路径。【输入】共n+m+3行,其中:第一行为整数n。第2行到第n+1行(共n行) ,每行两个整数x和y,描述了一个点的坐标。第n+2行为一个整数m,表示图中连线的

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 16:20
  • 阅读 ( 869 )

信息学奥赛一本通T1341:图的遍历 一笔画问题

【题目描述】如果一个图存在一笔画,则一笔画的路径叫做欧拉路,如果最后又回到起点,那这个路径叫做欧拉回路。根据一笔画的两个定理,如果寻找欧拉回路,对任意一个点执行深度优先遍历;找欧拉路,则对一个奇点执行dfs,时间复杂度为O(m+n),m为边数,n是点数。【输入】第一行n,m,有n个点,m条边,以下m行描述每条边连接的两点。【输出】欧拉路或欧拉回路,输出一条路径即可。【输入样例】5 5【输出样例】1

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 16:20
  • 阅读 ( 2040 )

信息学奥赛一本通T1340:树与二叉树 扩展二叉树

【题目描述】由于先序、中序和后序序列中的任一个都不能唯一确定一棵二叉树,所以对二叉树做如下处理,将二叉树的空结点用·补齐,如图所示。我们把这样处理后的二叉树称为原二叉树的扩展二叉树,扩展二叉树的先序和后序序列能唯一确定其二叉树。现给出扩展二叉树的先序序列,要求输出其中序和后序序列。【输入】扩展二叉树的先序序列。【输出】输出其中序和后序序列。【输入样例】ABD..EF..G..C..【输出样例】DB

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 10:20
  • 阅读 ( 828 )

信息学奥赛一本通T1339:树与二叉树 求后序遍历

【题目描述】输入一棵二叉树的先序和中序遍历序列,输出其后序遍历序列。【输入】共两行,第一行一个字符串,表示树的先序遍历,第二行一个字符串,表示树的中序遍历。树的结点一律用小写字母表示。【输出】一行,表示树的后序遍历序列。【输入样例】abdec【输出样例】debca【源程序】 

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 10:20
  • 阅读 ( 788 )

信息学奥赛一本通T1338:树与二叉树 医院设置

【题目描述】设有一棵二叉树(如图3-8,其中圈中的数字表示结点中居民的人口,圈边上数字表示结点编号。现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小,同时约定,相邻结点之间的距离为1。就本图而言,若医院建在1处,则距离和=4+12+2*20+2*40=136;若医院建在3处,则距离和=4*2+13+20+40=81…【输入】第一行一个整数n,表示树的结点数(n≤100)。接下来的n

  • 0
  • 0
  • 轩爸
  • 发布于 2020-05-11 10:20
  • 阅读 ( 1042 )

信息学奥赛一本通T1337:树与二叉树 单词查找树

【题目描述】在进行文法分析的时候,通常需要检测一个单词是否在我们的单词列表里。为了提高查找和定位的速度,通常都画出与单词列表所对应的单词查找树,其特点如下:1.根结点不包含字母,除根结点外每一个结点都仅包含一个大写英文字母;2.从根结点到某一结点,路径上经过的字母依次连起来所构成的字母序列,称为该结点对应的单词。单词列表中的每个单词,都是该单词查找树某个结点所对应的单词;3.在满足上述条件下,该单

  • 0
  • 1
  • 轩爸
  • 发布于 2020-05-11 10:20
  • 阅读 ( 955 )