- 博客(32)
- 收藏
- 关注
原创 上海市计算机学会竞赛平台2023年8月月赛丙组 T5 方格路径
首先需要明白的是,因为宽搜的基本思想,所以步数消耗较大的状态一定在消耗少的后面,所以当枚举到第二个状态重复的点时前一个肯定还未出队,所以就可以把它们合并为一个状态。其本质仍然是枚举每一条路径并计数,题目却要求模一个高达10亿的数,由此可见最坏计数次数必定大于10亿,超时不可避免。深搜中的剪枝与最优化剪枝不同,当步数相等时最优化剪枝会剪掉,因为要寻找的是路径长度,但是现在找的是路径条数,所以不能剪。而与普通的最优路径问题不同的是此题问的是最优路径的条数。
2023-08-25 13:40:45
299
原创 上海市计算机学会竞赛平台2023年7月月赛丙组题目T5 排列排序
的每个数字都在 1 到 n 之间,且没有两个数字相等,则称这个序列为全排列。例如1,3,2 以及 4,3,2,1 都是全排列。因为当有的数字已经被使用后,不能再次使用,必须继续向后找。,则以字典序规则比较 a 序列与 b 序列,字典序更小的序列更靠前。个全排列的位数,假设下列代码所用变量已经定义,最终可以求出第。表示的是位次,用于每次输出剩余的首位(即第。数组进行标记,如果使用过了,即继续查找。我们将所有的全排列排序,定义全排列。存放的是位数(即当前阶乘的参数),第 2 个全排列是 1 2。
2023-08-20 20:27:10
355
原创 信息科技基础常识
A.excel B.Photoshop C.WPS文字。A.封面 B.首页 C.标题页。A.目录 B.首页 C.标题页。A.进入 B.开始 C.插入。A.表格 B.文本框 C.符号。A.仿制图章工具 B.魔棒工具 C.油漆桶工具。
2023-08-05 15:52:16
188
原创 Toyota Programming Contest 2023#4(AtCoder Beginner Contest 311)D-Grid Ice Floor
可以记录每一次转向时的状态(撞上岩石或出发时),也分为四个方向,如果之前有在撞上后选择相同方向的记录则return,也许你们会问这里为什么还要分四个方向,每一次搜索不都尝试了四个方向了吗?直接记录点肯定是不行的,因为在这个点上可能有四种不同的前进方向,所以数组也应该分别记录每个方向,当然我选择的是下面那种方法。我将撞墙后的剪枝数组与冰块是否到达的数组合并为一个,冰块是否到达默认存在了vh[i][j][1]。在代码中,1代表向上,2代表向下,3代表向左,4代表向右。最后对于每个冰块,统计是否到达过。
2023-08-05 15:43:50
226
原创 [D - Peaceful Teams ](https://atcoder.jp/contests/abc310/tasks/abc310_d)
因为对于每一个问题节点,其状态不仅在递归参数列表里,还在状态数组里,所以无法记忆化或转递归(至少我不太行)。的复杂度这不算什么)计算空队数量,一旦大于,return,等于的话,应当是阶乘(不过优化小,就没加)。另外,对于冲突的队员,因为同一个人可能有很多与其冲突的队员,所以我选择用vector存储。对运动员不能与对应的运动员分在同一组,试问有几种分队方案。下面是超时代码,49个点过45个,种不同的方案,那么枚举出来有。队伍1:运动员1,运动员3。队伍2:运动员3,运动员1。种方案(排列问题,从。
2023-07-30 16:26:56
77
原创 AtCoder Beginner Contest 309 E题
这意味着我们从前向后的枚举顺序也是祖先先枚举,后代后枚举的顺序,换句话说,祖先的保险有后效性,而枚举顺序正好从前向后。个人访问其前驱保险传递代数,再比较自身保险代数,一层for循环解决问题,这样做不仅效率高(没有递归消耗),而且省空间(记前驱比记后记要少一维,也没有递归消耗),最终时间复杂度。的人,他的保险最多能向下生效的代数。个人,他保险还可以向下传递的代数是祖先保险可传递代数-1与自身保险可传递代数取最大值。一个家庭,除了第一个人,每人都有一个祖先(且祖先编号必定小于自己编号)。份保险,不仅可以对第。
2023-07-19 11:58:56
104
原创 2023.7.1 Atcoder 308beginner E题
的数量(当然,因为数字的不同,需要分为。的数量(当然,因为数字的不同,需要分为。共9个,所以避免麻烦,我选择数组存储)。我的想法是从前向后挨个枚举,统计当前。个字符(M,E,或X),定义一个。然后输出所有值的和。大家想一想,如果只有统计ME呢?个整数(0,1,或2)和。从前向后挨个枚举,统计当前。= MEX,它的值为不等于。
2023-07-12 10:56:09
105
原创 上海市计算机学会竞赛平台2023年5月月赛
从1开始,挨个在原数后面加0或1,用余数定理算余数,同时用余数作剪枝(因为题目要求最小倍数,所以就不用搜这个数,同时深搜就不可行),一直搜到余数为0为止,但是为了输出,用于宽搜的队列还要有父节点的编号与本身的选择(0或1)。给定一个长度为 n 的排列,每次操作,你可以选择其中一个数字,并将它放到开头或结尾,请问最少多少次操作,才能使该排列变为升序?特别注意,若 n 是奇数,则在翻转变换下,(n+1)/2 号位置上的演员位置不变。这题先存图,然后dfs搜索目的地路径,然后“打卡”,思路简单。
2023-05-28 11:05:14
467
原创 上海市计算机学会竞赛平台2023年3月月赛丙组
题目描述给定一个由”L","C“,”R“三个字母组成的循环序列:”LCRLCRLCRLC⋯“,这个序列的循环节为“LCR”。现在给定一个数字n,请求出这个序列的第n位是哪个字母。输入格式单个整数:表示 n。输出格式单个字符:表示字母序列的第n个字母。数据范围对于 50% 的数据,1≤n≤1,000,000对于 100% 的数据,1≤n≤1,000,000,000样例数据输入:5输出:C无话可说。longlong。
2023-03-19 14:17:51
724
原创 上海市计算机学会竞赛平台2023年3月月赛乙组
题目描述小爱拿到了n张卡片,每张卡片的正反面均写有一个数字,其中第ii张卡片的正面的数字为ai,反面的数字为bi。他想把每张卡片选取合适的一面后,放入下列算式中,卡片之间顺序可以交换,但每张卡片只能用一次。请问,小爱通过以上操作,能得到的最大值是多少?输入格式第一行,一个正整数n接下来n行,每行两个正整数aibi输出格式输出共一行,一个整数,表示填入算式后,所能获得的最大值数据范围对于 30% 的数据,1≤n≤10。
2023-03-19 13:46:19
736
原创 USACO 2023 February Contest, Bronze
比较d[i]-d[i-1]与k+1大小取最小值(贪心。还有:因为这里问的步数最小步数而是可不可以得到,所以只要可以印(可以印----是指不能把应该印“ . ”的地方印“ * ”)我们就尽量印。1.与上一次连续订阅,共花费k+1+d[i]-d[i-1],相当于这一次订阅花了d[i]-d[i-1]2.否则(也就是草够吃),那么此时吃草的天数就是两次送草间隔天数,同时也可能余下一些草。1.草不够吃,Bessie挨饿,那么此时吃草的天数就是草的份数。接下来就是要明白:先印后印都是一样的,搞清楚这一点就可以枚举了。
2023-03-18 21:49:14
625
原创 USACO 2023 February Contest, Silver-2 Cow-libi
对每一个案件按照案发时间进行排序以便于二分搜索,对于每一头牛最能够证明它是不是犯罪了的的案件就是它之前最晚与之后最早的案件。因此,按时间对案件排序,寻找它之后最早的案件pos,那么它之前最晚的案件就是pos-1。然后利用勾股定理算出该牛能不能在规定时间内完成犯罪。
2023-03-18 21:04:34
408
原创 USACO 2022 December Contest, Bron
USACO12月月赛铜牌解题报告T1-Cow CollegeT2-Feeding the CowsT3-Reverse Engineering
2023-01-02 18:28:56
599
原创 洛谷【C++编程基础】递归函数初步 专题解题报告
T89304 递归求和 T89307 Hermite多项式 T89310 递归函数求值1 T89314 递归函数求值2 T89316 汉诺塔问题 T90615 字符串逆序T90627 费波那契数列 T90628 F91T90630 最大公约数与最小公倍数T90632 十进制转八进制T90633 走台阶
2022-12-05 10:18:15
1162
原创 上海计算机协会11月月赛-丙组解题报告
上海计算机协会11月月赛-丙组解题报告T1 奇偶数的判定T2 搭积木T3 最长平台T4 积木染色T5 出栈序列
2022-11-19 13:24:05
962
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人