
信息学奥赛一本通
qq_34920482
这个作者很懒,什么都没留下…
展开
-
1236:区间合并 易错题
首先储存区间,不必多言struct node{ int a,b; } s[55010];刚开始的想法是想先把所有的子区间按从小到大的顺序排列。先排左端点,左端点相同再排右端点如1 42 33 6也就是bool compare(node a,node b){ if(a.a==b.a) return a.b<b.b; else return a.a<b.a; }然后遍历排好序的所有结点 for(int i=1;i<n;i++)原创 2022-01-26 09:56:31 · 811 阅读 · 0 评论 -
1336:【例3-1】找树根和孩子
【题目描述】给定一棵树,输出树的根rootroot,孩子最多的结点maxmax以及他的孩子。【输入】第一行:nn(结点个数≤100≤100),mm(边数≤200≤200)。以下mm行:每行两个结点xx和yy,表示yy是xx的孩子(x,y≤1000x,y≤1000)。【输出】第一行:树根:rootroot;第二行:孩子最多的结点maxmax;第三行:maxmax的孩子(按编号由小到输出)。【输入样例】8 74 14 21 31 52 62 7原创 2021-06-17 16:23:44 · 162 阅读 · 0 评论 -
1331:【例1-2】后缀表达式的值
【题目描述】从键盘读入一个后缀表达式(字符串),只含有0-9组成的运算数及加(+)、减(—)、乘(*)、除(/)四种运算符。每个运算数之间用一个空格隔开,不需要判断给你的表达式是否合法。以@作为结束标志。比如,16–9*(4+3)转换成后缀表达式为:16□9□4□3□+*–,在字符数组A中的形式为:栈中的变化情况:运行结果:-47提示:输入字符串长度小于250,参与运算的整数及结果之绝对值均在264264范围内,如有除法保证能整除。【输入】一个后缀表达式。【输出】一个后缀表达式原创 2021-06-16 10:07:27 · 265 阅读 · 0 评论