- 博客(6)
- 收藏
- 关注
原创 P1003 [NOIP2011 提高组] 铺地毯
接下来的n 行中,第 i+1 行表示编号 i 的地毯的信息,包含四个整数 a,b,g,k,每两个整数之间用一个空格隔开,分别表示铺设地毯的左下角的坐标(a,b) 以及地毯在 x 轴和 y 轴方向的长度。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。一个示例的矩形如上图,通过四个数据,可以把四个顶点算出来,然后判断该点是否在矩形范围之内,如果有,则更新这个点的地毯编号值(初始设为-1)想知道覆盖某个点的最上面的那张地毯的编号。
2024-07-30 18:45:11
365
原创 P1002 [NOIP2002 普及组] 过河卒
根据题目,可以设置一个long long类型二维数组dp来存储信息,dp[i][j]表示(i,j)的路径条数,根据题意,我们可以得出dp[i][j]=dp[i-1][j]+dp[i][j-1],即两种方案相加所得到新方案路径之和。但是随之而来造成了一个问题:当i或j本身为0时,再访问dp[i-1][j]或dp[i][j-1]时,下标则为-1,会造成。(0,0)向B点走,且不能碰到马的“控制点”(即该马所在的点和所有跳跃一步可达的点),求到B点的路径条数,应该是从0开始,到9结束,与生活习惯中的1。
2024-07-29 19:10:21
226
原创 P5661 [CSP-J2019] 公交换乘
本题时间限制n<=10^5,若从头开始扫描数组,则极易超时,究其原因,是不用的票造成的极大时间浪费,所以可以用一个head变量,先扫出超时的优惠券,再从head对应下标开始扫描,就不会tle。接下来的 𝑛行,每行包含 3 个整数,相邻两数之间以一个空格分隔。第 𝑖行的第 1 个整数代表第 𝑖条记录乘坐的交通工具,和dfs和bfs类似,访问过的优惠券就不能再次访问,所以应当设置布尔型vis数组标记是否访问过,如果没有访问,才可以继续。输入文件的第一行包含一个正整数 𝑛,代表乘车记录的数量。
2024-07-26 18:07:56
341
原创 P8813 [CSP-J 2022] 乘方
中,pow函数用于计算一个数的任意次幂,其函数原型为long double pow(long double X, long double Y),或者long double pow(long double X, int Y),其中X是底数,Y是指数。分多步进行运算,将a^b转换为b次a的累乘操作,中间如果超过int类型极限,输出-1终止程序,若程序进行至最后,输出答案。输入两个正整数a,b,判断a^b是否超过int类型的表示范围,如果是,输出-1,否则输出a^b的值。或使用中的。
2024-07-26 17:29:42
412
原创 数据主义:c++草履虫(1.0)
看《未来简史》讲到数据主义,其信奉算法是一切,这里,姑且做一个小尝试,用c++模拟一只十分生硬的草履虫吧...
2024-02-19 20:03:55
498
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人