- 博客(16)
- 收藏
- 关注
原创 P1958 上学路线
你所在城市的街道好像一个棋盘,有 a 条南北方向的街道和 b 条东西方向的街道。南北方向的 a 条街道从西到东依次编号为 1 到 a,而东西方向的 b 条街道从南到北依次编号为 1 到 b,南北方向的街道 i 和东西方向的街道 j 的交点记为 (i,j)。你住在 (1,1) 处,而学校在 (a,b) 处,你骑自行车去上学,自行车只能沿着街道走,而且为了缩短时间只允许沿着向东和北的方向行驶。,(Xn,Yn),这些路口是不能通车的。输出一个整数表示从 (1,1) 到 (a,b) 的行车路线总数。
2025-08-30 22:30:29
282
原创 P1067 [NOIP 2009 普及组] 多项式输出
紧跟一个正整数,表示此项系数的绝对值(如果一个高于 0 次的项,其系数的绝对值为 1,则无需输出 1)。如果 x 的指数大于 1,则接下来紧跟的指数部分的形式为“xb”,其中 b 为 x 的指数;如果 x 的指数为 1,则接下来紧跟的指数部分形式为 x;第二行有 n+1 个整数,其中第 i 个整数表示第 n−i+1 次项的系数,每两个整数之间用空格隔开。PS:题目的测试点似乎没有开头的项的系数为0的情况🤔(将21行改为"else {"一样能AC)第一行 1 个整数,n,表示一元多项式的次数。
2025-08-30 21:51:58
487
原创 P2684 搞清洁
时间T),并且知道每只奶牛的工作开始时间和工作结束时间。所以如果排序,要按开始时间排,以避免造成空档。有 3 头奶牛,第 1 头能工作的时间段是 1∼7,即从时间 1 开始工作,时间 7 结束(时间 7 也在工作的),第 2 头是 3∼6,第 3 头是 8∼10,则只需要第 1 头和第 3 头奶牛就能使每一个时间都有奶牛工作。FJ 准备分配它的 N 只奶牛 (1≤N≤2.5×10^4) 做清洁工作,他把一天分成 T(1≤T≤10^6) 个时间段,他希望每一个时间段都有奶牛在清洁,但搞清洁的奶牛数越少越好。
2025-08-02 23:08:05
357
2
原创 B3938 [语言月赛 202402] 陨石
对于 100% 的数据,1≤xi≤n≤5×103,1≤m≤106,0≤t≤106,1≤ai≤106,1≤T≤5×103。PS:关于为什么要倒着看被砸后的牛棚防御值,是因为要修好更多的牛棚,不能死磕最小的那一个,这样会减少被保护的牛棚总数,这样的话有可能连最小的都补不好。比如说补给时间是50,防御值最小的是-100,但其他都是-1。在这种情况下,各牛棚防御值变化如下,其中蓝色数字代表初始防御值,绿色数字代表补给,红色数字代表陨石撞击:。分别表示牛棚的数量,卷王补给的时间和陨石的数量。
2025-07-26 22:25:36
792
原创 P8837 [传智杯 #3 决赛] 商店
由于每个人的钱数和每个物品的价钱在输入没有顺序,可能会发生钱最多的人买了最便宜的物品,所以要把它们都排序,剩下的就很好理解了。disangan333 想给 disangan233 买一个礼物,于是他和你一起逛商店。名同学去逛商店,店里有。
2025-07-20 08:29:09
324
原创 P1059 [NOIP 2006 普及组] 明明的随机数
对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。st.find(a) 返回a的迭代器,如果不存在,返回st.end()st.lower_bound(a) 返回不小于a的地址,如果不存在,返回st.end()st.upper_bound(a) 返回大于a的地址,如果不存在,返回st.end()个用空格隔开的正整数,为从小到大排好序的不相同的随机数。
2025-07-12 22:59:12
528
原创 P1551 亲戚
x=1,y=3,通过abc函数的运算,xf=1,yf=3.因为xf!x=1,y=4,通过abc函数的运算,xf=1,yf=1.因为xf=yf(1=1),所以输出“Yes”.(第一次循环)x=2,y=3,通过abc函数的运算,xf=1,yf=1.因为xf=yf(1=1),所以输出“Yes”.(第二次循环)x=5,y=2,通过abc函数的运算,xf=1,yf=1.因为xf=yf(1=1),所以无事发生.(第四次循环)首先让a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=5,a[6]=6。
2025-07-05 21:58:02
386
原创 求二叉树的遍历 (B3642 二叉树的遍历,P1827 美国血统,P1030 求先序排列)
他把他的奶牛 们的家谱作成二叉树,并且把二叉树以更线性的“树的中序遍历”和“树的前序遍历”的符号加以记录而 不是用图形的方法。(约定树结点用不同的大写字母表示,且二叉树的节点个数。),建立一棵二叉树(根节点的编号为 1),如果是叶子结点,则输入 `0 0`。共两行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序排列。之后 n 行,第 i 行两个整数 l、r,分别表示结点 i 的。好的,在你看完这题代码后,你是否意识到求二叉树的遍历的模板?对于dfs的条件的编写比较灵活,平时要多练习。
2025-06-28 23:30:15
1064
原创 P1135 奇怪的电梯 (bfs)
呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯。大楼的每一层楼都可以停电梯,而且第 i 层楼(1≤i≤N)上有一个数字 Ki(0≤Ki≤N)。电梯只有四个按钮:开,关,上,下。当然,如果不能满足要求,相应的按钮就会失灵。),从 1 楼开始。在 1 楼,按“上”可以到 4 楼,按“下”是不起作用的,因为没有 -2 楼?第一行为三个用空格隔开的正整数,表示 N, A, B(1≤N≤200,1≤A,B≤N)对于100% 的数据,1≤N≤200,1≤A,B≤N,0≤Ki≤N。
2025-06-21 22:33:10
360
原创 P1087 [NOIP 2004 普及组] FBI 树
首先,要输入n,然后输入长度为2的n次方的一串01数字(也就是根节点R和最后一行的叶节点的所有值)。这里与淘汰赛很像,也是告诉了我们所有的叶节点,让我们把这一棵树复原出来。FBI树是一种二叉树,它的结点类型也包括F结点,B结点和I结点三种。现在给定一个长度为2^N的01 串,请用上述构造方法构造出一棵 FBI 树,并输出它的。在知道这棵树的全貌后,我们就可以求它的后序遍历了。大家如果画一个图会更清楚,计算过程太麻烦,就不写了(o゚v゚)所以,让我们来看一下这一题的图。一个字符串,即 FBI 树的。
2025-06-14 22:44:12
452
原创 P4715 【深基16.例1】淘汰赛 (二叉树)
第二次循环:x的值为4,y的值为7,经过比赛,4(编号1),10(编号5)晋级,两位亚军备选人已决出,且i=2,退出循环。第一次循环:x的值为8,y的值为15,经过比赛,4(编号1),3(编号3),10(编号5),9(编号7)晋级。输入n(3),经过pow函数的运算,x的值等于2的三次方(8),x的值等于2的四次方减一(15)。第二行 2^n 个整数,第 i 个整数表示编号为 i 的国家的能力值(1≤i≤2n)。进入第一个for循环,输入各个国家的能力值(4,2,3,1,10,5,9)。
2025-06-07 20:34:01
462
原创 P5266 【深基17.例6】学籍管理 (map)
其实,数组也是一种映射,举个例子:int a[1]=10,这就是把10映射成1,也就是给10起了个名字叫做1。如果已经有同名的学生则更新这名学生的成绩为 SCORE。您要设计一个学籍管理系统,最开始学籍数据是空的,然后该系统能够支持下面的操作(不超过。查找“名字”为key的值是否存在,存在返回1,不存在返回0。(lxl),使名为lxl的学生被。(10),使名为lxl的学生的。(lxl),但名为lxl的。输入a的值为1,那么输入。输入a的值为2,那么输入。输入a的值为2,那么输入。,但唯一的名为lxl的。
2025-05-31 20:00:31
388
原创 P1571 眼红的Medusa
输入n(4),m(3),for循环输入获得科技创新奖的人的编号(2,15,6,8)和获得特殊贡献奖的人的编号(8,9,2),然后将获得特殊贡献奖的人的编号排序,变成2,8,9。a[i]的值为2,通过f函数的计算(计算过程有点麻烦就不写了,大家可以自己推一下),可以知道编号为2的人是获得了两个奖项的人,输出a[i](2)。a[i]的值为8,通过f函数的计算,可以知道编号为8的人是获得了两个奖项的人,输出a[i](8)。a[i]的值为6,通过f函数的计算,可以知道编号为6的人不是获得了两个奖项的人,无事发生。
2025-05-24 19:32:08
210
原创 P1031 [NOIP 2002 提高组] 均分纸牌
第二堆纸牌数量为7,于10相差3,那么第三堆纸牌(17)给第二堆纸牌(7)三张牌,第二堆纸牌数量变为10,符合标准,第三堆纸牌数量变为14。第一堆纸牌数量为9,于10相差1,那么第二堆纸牌(8)给第一堆纸牌(9)一张牌,第一堆纸牌数量变为10,符合标准,第二堆纸牌数量变为7。第三堆纸牌数量为14,于10相差4,那么第三堆纸牌(14)给第四堆纸牌(6)四张牌,第三,四堆纸牌数量都变为10,符合标准。在输入完成后,sum的值为9+8+17+6=40,将sum(40)于n(4)相除,得到p(10)。
2025-05-17 20:11:14
213
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅