自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 收藏
  • 关注

原创 P1090 [NOIP 2004 提高组] 合并果子【java】【AC代码】

在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 n−1 次合并之后, 就只剩下一堆了。多多在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以多多在合并果子时要尽可能地节省体力。

2025-04-14 21:01:13 198

原创 P1803 凌乱的yyy / 线段覆盖【java】【AC代码】

这是一道贪心题,要求尽可能多的参加比赛,并且时间不能交叉覆盖,一个时间段内只能参加一个。因此可以按照比赛结束时间的顺序,将比赛从小到大排,以比赛开始时间做判断,有交叉的就不参加了。第一行是一个整数 n,接下来 n 行每行是 2 个整数 ai​,bi​ (ai​<bi​),表示比赛开始、结束的时间。由于 yyy 是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加 2 个及以上的比赛。现在各大 oj 上有 n 个比赛,每个比赛的开始、结束的时间点是知道的。所以,他想知道他最多能参加几个比赛。

2025-04-13 15:54:31 238

原创 关于在Eclipse中自定义类似于psvm的快捷代码模板

幸运的是,Eclipse 附带了一个标准的插件集,包括Java。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建。Eclipse 是一个开放源代码的、基于。

2025-04-13 15:47:34 258

原创 P1825 [USACO11OPEN] Corn Maze S【java】【AC代码】

去年秋天,农夫约翰带着奶牛们参观了一个玉米迷宫。但这不是一个普通的玉米迷宫:它有几个重力驱动的传送滑梯,可以让奶牛瞬间从迷宫中的一个点传送到另一个点。滑梯是双向的:奶牛可以瞬间从滑梯的起点滑到终点,或者从终点滑到起点。如果奶牛踩到滑梯的任一端,她必须使用滑梯。玉米迷宫的外部完全由玉米包围,只有一个出口。迷宫可以用一个 N×M(2≤N≤300;2≤M≤300)的网格表示。每个网格元素包含以下项目之一:* 玉米(玉米网格元素不可通行)* 草地(容易通过!* 滑梯端点(会将奶牛传送到另一个端点)

2025-04-10 19:47:38 196

原创 P1605 迷宫【java】【AC代码】

第二行为四个正整数 SX,SY,FX,FY,SX,SY 代表起点坐标,FX,FY 代表终点坐标。给定起点坐标和终点坐标,每个方格最多经过一次,问有多少种从起点坐标到终点坐标的方案。在迷宫中移动有上下左右四种方式,每次只能移动一个方格。数据保证起点上没有障碍。给定一个 N×M 方格的迷宫,迷宫里有 T 处障碍,障碍处不可通过。第一行为三个正整数 N,M,T,分别表示迷宫的长宽和障碍总数。接下来 T 行,每行两个正整数,表示障碍点的坐标。输出从起点坐标到终点坐标的方案总数。

2025-04-08 19:29:38 217

原创 P1443 马的遍历【java】【AC代码】

有一个 n×m 的棋盘,在某个点 (x,y) 上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步。一个 n×m 的矩阵,代表马到达某个点最少要走几步(不能到达则输出 −1)。输入只有一行四个整数,分别为 n,m,x,y。

2025-04-01 22:27:38 156

原创 P1219 [USACO1.5] 八皇后 Checker Challenge【java】【AC代码】

一个如下的 6×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 2 4 6 1 3 5 来描述,第 i 个数字表示在第 i 行的相应位置有一个棋子,如下:行号 1 2 3 4 5 6列号 2 4 6 1 3 5这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。并把它们以上面的序列方法输出,解按字典顺序排列。请输出前 3 个解。最后一行是解的总个数。

2025-03-30 20:21:37 148

原创 P1182 数列分段 Section II【java】【测试点4WA】

对于给定的一个长度为 N 的正整数数列 A1∼N​,现要将其分成 M(M≤N)段,并要求每段连续,且每段和的最大值最小。关于最大值最小:例如一数列 4 2 4 5 1 要分成 3 段。将其如下分段:第一段和为 6,第 2 段和为 9,第 3 段和为 1,和最大值为 9。将其如下分段:第一段和为 4,第 2 段和为 6,第 3 段和为 6,和最大值为 6。并且无论如何分段,最大值不会小于 6。所以可以得到要将数列 4 2 4 5 1 要分成 3 段,每段和的最大值最小为 6。

2025-03-27 20:50:24 262

原创 P3853 [TJOI2007] 路标设置【java】【AC代码】

B 市和 T 市之间有一条长长的高速公路,这条公路的某些地方设有路标,但是大家都感觉路标设得太少了,相邻两个路标之间往往隔着相当长的一段距离。为了便于研究这个问题,我们把公路上相邻路标的最大距离定义为该公路的“空旷指数”。请注意,公路的起点和终点保证已设有路标,公路的长度为整数,并且原有路标和新设路标都必须距起点整数个单位距离。第 2 行包括递增排列的 N 个整数,分别表示原有的 N 个路标的位置。第 1 行包括三个数 L,N,K,分别表示公路的长度,原有路标的数量,以及最多可增设的路标数量。

2025-03-27 17:20:26 204

原创 12届蓝桥杯—货物摆放

货物摆放。

2025-03-25 22:25:05 327

原创 P2440 木材加工【java】【AC代码】

例如有两根原木长度分别为 11 和 21,要求切割成等长的 6 段,很明显能切割出来的小段木头长度最长为 5。木头长度的单位是 cm,原木的长度都是正整数,我们要求切割得到的小段木头的长度也是正整数。第一行是两个正整数 n,k,分别表示原木的数量,需要得到的小段的数量。当然,我们希望得到的小段木头越长越好,请求出 l 的最大值。接下来 n 行,每行一个正整数 Li​,表示一根原木的长度。如果连 1cm 长的小段都切不出来,输出。为 l 的小段木头(木头有可能有剩余)。仅一行,即 l 的最大值。

2025-03-24 19:23:21 240

原创 P1143 进制转换【java】【AC代码】

共三行,第一行是一个正整数,表示需要转换的数的进制 n (2≤n≤16),第二行是一个 n 进制数,若 n>10 则用大写字母 A∼F 表示数码 10∼15,并且该 n 进制数对应的十进制的值不超过 109,第三行也是一个正整数,表示转换之后的数的进制 m (2≤m≤16)。请你编一程序实现两种不同进制之间的数据转换。一个正整数,表示转换之后的 m 进制数。

2025-03-22 18:31:10 135

原创 P1802 5 倍经验日【java】【AC代码】

悲剧的是,用药量没达到最少打败该人所需的属性药药量,则打这个人必输。例如他用 2 个药去打别人,别人却表明 3 个药才能打过,那么相当于你输了并且这两个属性药浪费了。后面 n 行每行三个数,分别表示失败时获得的经验 losei​,胜利时获得的经验 wini​ 和打过要至少使用的药数量 usei​。思路:这是一道经典的01背包模版练习题,将与每个好友对决失败的情况全部累加作为初始值,再将药的容量作为列进行判断并dp。现在有 n 个好友,给定失败时可获得的经验、胜利时可获得的经验,打败他至少需要的药量。

2025-03-18 20:55:22 264

原创 P1010 [NOIP 1998 普及组] 幂次方

所以 1315 最后可表示为 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)。就比如137——128(2^7)+8(2^3)+1(2^0),这道题既然要做递归,那么就要有特判,否则就会让结果乱套了。所以最后 137 可表示为 2(2(2)+2+2(0))+2(2+2(0))+2(0)。7=22+2+20 ( 21 用 2 表示),并且 3=2+20。由此可知,137 可表示为 2(7)+2(3)+2(0)又如 1315=210+28+25+2+1。

2025-03-14 21:56:00 324

原创 P1259 黑白棋子的移动【java】【AC代码】

有 2n 个棋子排成一行,开始为位置白子全部在左边,黑子全部在右边,如下图为 n=5 的情况:移动棋子的规则是:每次必须同时移动相邻的两个棋子,颜色不限,可以左移也可以右移到空位上去,但不能调换两个棋子的左右位置。每次移动必须跳过若干个棋子(不能平移),要求最后能移成黑白相间的一行棋子。如 n=5 时,成为:任务:编程打印出移动过程。

2025-03-14 18:00:51 286

原创 P1164 小A点菜【java】【AC代码】

餐馆虽低端,但是菜品种类不少,有 N 种 (N≤100),第 i 种卖 ai​ 元 (ai​≤1000)。由于是很低端的餐馆,所以每种菜只有一份。小 A 奉行“不把钱吃光不罢休”的原则,所以他点单一定刚好把 uim 身上所有钱花完。他想知道有多少种点菜方法。uim 神犇拿到了 uoi 的 ra(镭牌)后,立刻拉着基友小 A 到了一家……第二行起 N 个正数 ai​(可以有相同的数字,每个数字均在 1000 以内)一个正整数,表示点菜方案数,保证答案的范围在 int 之内。

2025-03-13 19:14:08 579

原创 P2437 蜜蜂路线【java】【AC代码】

一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房 m 开始爬到蜂房 n,m<n,有多少种爬行路线?(备注:题面有误,右上角应为 n−1)

2025-03-12 20:18:32 289

原创 P1928 外星密码【java】【AC代码】

经过很长时间的努力,小队终于收到了外星生命的回信。解开密码的第一道工序就是解压缩密码,外星人对于连续的若干个相同的子串 X 会压缩为 [DX] 的形式(D 是一个整数且 1≤D≤99),比如说字符串 CBCBCBCB 就压缩为 [4CB] 或者[2[2CB]],类似于后面这种压缩之后再压缩的称为二重压缩。如果是 [2[2[2CB]]] 则是三重的。现在我们给你外星人发送的密码,请你对其进行解压缩。输入一行,一个字符串,表示外星人发送的密码。输出一行,一个字符串,表示解压缩后的结果。

2025-03-12 19:10:48 338

原创 P2036 [COCI 2008/2009 #2] PERKET【java】【dfs】【AC代码】

当我们添加配料时,总的酸度为每一种配料的酸度总乘积;总的苦度为每一种配料的苦度的总和。对于 100% 的数据,有 1≤n≤10,且将所有可用食材全部使用产生的总酸度和总苦度小于 1×109,酸度和苦度不同时为 1 和 0。接下来 n 行,每行 2 个整数 si​ 和 bi​,表示第 i 种食材的酸度和苦度。众所周知,美食应该做到口感适中,所以我们希望选取配料,以使得酸度和苦度的绝对差最小。另外,我们必须添加至少一种配料,因为没有任何食物以水为配料的。一行一个整数,表示可能的总酸度和总苦度的最小绝对差。

2025-03-10 20:04:18 333

原创 P3799 小 Y 拼木棒【java】【AC代码】

可以将木棍分别分成a b c c,这里主要是看两种情况,假设有k根a长度木棒,如果a长度=b长度,那么就要在k根木棒中挑两根——(k *(k-1))/ 2,设k2根c长度的木棒,也是挑两根——(k2*(k2-1)) / 2,将这两个结果相乘就能得到组合的结果。接着就是枚举长度不同的情况,设k1根a木棒,k2根b木棒,k3根c木棒,那么这里就是a和b各挑一根——k1*k2,再算上k3各挑两根,组合结果就是k1 * k2 * k3*(k3-1)/2。上道题中,小 Y 斩了一地的木棒,现在她想要将木棒拼起来。

2025-03-10 17:25:57 279

原创 P3654 First Step (ファーストステップ)【java】【AC代码】

思路:控制范围的题目,因为只能横着或者竖着站位,所以每次遍历到一个空位的时候,就对上下左右K个位置进行遍历,有障碍就跳出,然后要进行边界判定,满足两个条件(无障碍&&不越界)——就表示该站位合理,上下左右都走完之后,就把该点设为'#'。我们 Aqours 现在已经一共有 K 个队员了,要歌唱舞蹈起来的话,我们得排成一条 1×K 的直线,一个接一个地站在篮球场的空地上呢 (横竖均可)。我们浦之星女子学院的篮球场是一个 R 行 C 列的矩阵,其中堆满了各种学校的杂物 (用。表示) 好像并不多的样子呢……

2025-03-09 14:47:30 359

原创 P1157 组合的输出【java】【AC代码】

排列与组合是常用的数学方法,其中组合就是从 n 个元素中抽出 r 个元素(不分顺序且 r≤n),我们可以简单地将 n 个元素理解为自然数 1,2,…,n,从中任取 r 个数。所有的组合,每一个组合占一行且其中的元素按由小到大的顺序排列,每个元素占三个字符的位置,所有的组合也按字典顺序。一行两个自然数 n,r(1<n<21,0≤r≤n)。输出占 3 个场宽的数 x。现要求你输出所有组合。

2025-03-08 15:52:33 294

原创 P2089 烤鸡【java】【AC代码】

猪猪 Hanke 特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke 吃鸡很特别,为什么特别呢?因为他有 10 种配料(芥末、孜然等),每种配料可以放 1 到 3 克,任意烤鸡的美味程度为所有配料质量之和。现在, Hanke 想要知道,如果给你一个美味程度 n ,请输出这 10 种配料的所有搭配方案。第二行至结束,10 个数,表示每种配料所放的质量,按字典序排列。如果没有符合要求的方法,就只要在第一行输出一个 0。思路: 深度优先遍历,可以减少代码冗余。一个正整数 n,表示美味程度。

2025-03-07 19:20:43 146

原创 P1093 [NOIP 2007 普及组] 奖学金【java】【AC代码】

先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。第 j 行的 3 个数字依次表示学号为 j−1 的学生的语文、数学、英语的成绩。这两名同学的总分都是 279 (总分等于输入的语文、数学、英语三科成绩之和) ,但学号为 7 的学生语文成绩更高一些。任务:先根据输入的 3 门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。保证所给的数据都是正确的,不必检验。

2025-03-05 20:20:35 271

原创 P1059 [NOIP 2006 普及组] 明明的随机数【java】【AC代码】

明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了 N 个 1 到 1000 之间的随机整数 (N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。

2025-03-05 19:10:46 265

原创 P1518 [USACO2.4] 两只塔姆沃斯牛 The Tamworth Two【java】【AC代码】

一个格子可以是:一个障碍物,两头牛(它们总在一起),或者 Farmer John。两头牛和 Farmer John 可以在同一个格子内(当他们相遇时),但是他们都不能进入有障碍的格子。每次(每分钟)Farmer John 和两头牛的移动是同时的。如果他们在移动的时候穿过对方,但是没有在同一格相遇,我们不认为他们相遇了。计算 Farmer John 需要多少分钟来抓住他的牛,假设牛和 Farmer John 一开始的行动方向都是正北(即上)。两只牛逃跑到了森林里。你的任务是模拟他们的行为(牛和 John)。

2025-03-02 18:25:05 603

原创 P4924 [1007] 魔法少女小Scarlet【java】【AC代码】

Scarlet 最近学会了一个数组魔法,她会在 n×n 二维数组上将一个奇数阶方阵按照顺时针或者逆时针旋转 90∘。首先,Scarlet 会把 1 到 n2 的正整数按照从左往右,从上至下的顺序填入初始的二维数组中,然后她会施放一些简易的魔法。Scarlet 既不会什么分块特技,也不会什么 Splay 套 Splay,她现在提供给你她的魔法执行顺序,想让你来告诉她魔法按次执行完毕后的二维数组。

2025-03-02 17:27:34 265

原创 P1205 [USACO1.2] 方块转换 Transformations【java】【AC代码】

一块 n×n 正方形的黑白瓦片的图案要被转换成新的正方形图案。单独的一行包括 1∼7 之间的一个数字(在上文已描述)表明需要将转换前的正方形变为转换后的正方形的转换方法。组合:图案在水平方向翻转,然后再按照 1∼3 之间的一种再次转换。反射:图案在水平方向翻转(以中央铅垂线为中心形成原图案的镜像)。如果有多种可用的转换方法,请选择序号最小的那个。转 180°:图案按顺时针转 180°。转 270°:图案按顺时针转 270°。转 90°:图案按顺时针转 90°。,表示初始的正方形。,表示最终的正方形。

2025-02-25 13:23:13 899

原创 P1047 [NOIP 2005 普及组] 校门外的树【java】(AC代码)

已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。某校大门外长度为 l 的马路上有一排树,每两棵相邻的树之间的间隔都是 1 米。我们可以把马路看成一个数轴,马路的一端在数轴 0 的位置,另一端在 l 的位置;思路:类似于计数排序,路有n米就创建n+1长的数组,然后3是规定了三个区间,初始化i=start用for循环遍历这个区间,让区间内每个数组自加。接下来 m 行,每行两个整数 u,v,表示一个区域的起始点和终止点的坐标。第一行有两个整数,分别表示马路的长度 l 和区域的数目 m。

2025-02-23 11:52:23 150

原创 P1217 [USACO1.5] 回文质数 Prime Palindromes(java)【AC代码】

思路:因为回文数比较特殊,先通过判断是否为回文数在判断质数可以避免超时,我用的字符串判断是否回文数,其中11是一个特别的数,需要单独判断。因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。写一个程序来找出范围 [a,b](5≤a<b≤100,000,000)(一亿)间的所有回文质数。第一行输入两个正整数 a 和 b。输出一个回文质数的列表,一行一个。

2025-02-22 15:14:29 125

原创 关于java中的BigInteger类

比较——System.out.println(N.compareTo(B));//输出1,(这个方法和String那个一致)用法:BigInteger N = new BigInteger("100");//注意加减乘除的用法都是需要赋值的,如果只是使用方法,那个数不会有任何改变。减法——N = N.substract(B);乘法——N = N.multiply(B);求余——N = N.reamainder(B);除法——N = N.divide(B);加法——N = N.add(B);

2025-02-22 14:13:12 239

原创 P1055 [NOIP 2008 普及组] ISBN 号码(java)【AC代码】

每一本正式出版的图书都有一个 ISBN 号码与之对应,ISBN 码包括 9 位数字、1 位识别码和 3 位分隔符,其规定格式如,其中符号就是分隔符(键盘上的减号),最后一位是识别码,例如就是一个标准的 ISBN 码。ISBN 码的首位数字表示书籍的出版语言,例如 0 代表英语;第一个分隔符之后的三位数字代表出版社,例如 670 代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。

2025-02-21 18:51:47 510

原创 P5716 【深基3.例9】月份天数(java)AC代码

输入年份和月份,输出这一年的这一月有多少天。输入两个正整数,分别表示年份 y 和月数 m,以空格隔开。输出一行一个正整数,表示这个月有多少天。

2025-02-20 15:46:14 188

原创 P5707 【深基2.例12】上学迟到(java)AC代码

学校和 yyy 的家之间的距离为 s 米,而 yyy 以 v 米每分钟的速度匀速走向学校。学校要求必须在上午 8:00 到达,请计算在不迟到的前提下,yyy 最晚能什么时候出门。输出格式为 HH:MM,分别代表该时间的时和分。必须输出两位,不足前面补 0。由于路途遥远,yyy 可能不得不提前一点出发,但是提前的时间不会超过一天。在上学的路上,yyy 还要额外花费 10 分钟的时间进行垃圾分类。输出一个 24 小时制下的时间,代表 yyy 最晚的出发时间。对于 100% 的数据,1≤s,v≤104。

2025-02-19 12:50:34 791

原创 PAT乙级真题 — 1090 危险品装箱(java)

集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里。比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸。本题给定一张不相容物品的清单,需要你检查每一张集装箱货品清单,判断它们是否能装在同一只箱子里。

2025-02-18 02:51:49 291

原创 PAT乙级真题 — 1089 狼人杀-简单版(java)

以下文字摘自《灵机一动·好玩的数学》:“狼人杀”游戏分为狼人、好人两大阵营。在一局“狼人杀”游戏中,1 号玩家说:“2 号是狼人”,2 号玩家说:“3 号是好人”,3 号玩家说:“4 号是狼人”,4 号玩家说:“5 号是好人”,5 号玩家说:“4 号是好人”。已知这 5 名玩家中有 2 人扮演狼人角色,有 2 人说的不是实话,有狼人撒谎但并不是所有狼人都在撒谎。扮演狼人角色的是哪两号玩家?

2025-02-17 01:16:22 696

原创 PAT乙级真题 — 1088 三人行(java)

子曰:“三人行,必有我师焉。择其善者而从之,其不善者而改之。本题给定甲、乙、丙三个人的能力值关系为:甲的能力值确定是 2 位正整数;把甲的能力值的 2 个数字调换位置就是乙的能力值;甲乙两人能力差是丙的能力值的 X 倍;乙的能力值是丙的 Y 倍。请你指出谁比你强应“从之”,谁比你弱应“改之”。

2025-02-17 01:01:04 167

原创 PAT乙级真题 — 1087 有多少不同的值(java)

当自然数 n 依次取 1、2、3、……、N 时,算式 ⌊n/2⌋+⌊n/3⌋+⌊n/5⌋ 有多少个不同的值?(注:⌊x⌋ 为取整函数,表示不超过 x 的最大自然数,即 x 的整数部分。

2025-02-16 00:13:23 613

原创 PAT乙级真题 — 1086 就不告诉你(java)

做作业的时候,邻座的小盆友问你:“五乘以七等于多少?”你应该不失礼貌地围笑着告诉他:“五十三。”本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。

2025-02-15 23:54:39 283

原创 PAT乙级真题 — 1085 PAT单位排行(java)【20/25—测试点4、5超时】

每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜。本题就请你实现这个功能。

2025-02-15 23:44:10 481

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除