自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jungle~St...

我很懒呀..

  • 博客(61)
  • 收藏
  • 关注

原创 L1-050 倒数第N个字符串 (15分)

给定一个完全由小写英文字母组成的字符串等差递增序列,该序列中的每个字符串的长度固定为 L,从 L 个 a 开始,以 1 为步长递增。例如当 L 为 3 时,序列为 { aaa, aab, aac, …, aaz, aba, abb, …, abz, …, zzz }。这个序列的倒数第27个字符串就是 zyz。对于任意给定的 L,本题要求你给出对应序列倒数第 N 个字符串。输入格式:输入在一行中给出两个正整数 L (2 ≤ L ≤ 6) 和 N (≤10^5)输出格式:在一行中输出对应序列倒数第 N

2020-11-04 09:09:17 168

原创 N个数求和 (20分)

本题的要求很简单,就是求N个数字的和。麻烦的是,这些数字是以有理数分子/分母的形式给出的,你输出的和也必须是有理数的形式。输入格式:输入第一行给出一个正整数N(≤100)。随后一行按格式a1/b1 a2/b2 …给出N个有理数。题目保证所有分子和分母都在长整型范围内。另外,负数的符号一定出现在分子前面。输出格式:输出上述数字和的最简形式 —— 即将结果写成整数部分 分数部分,其中分数部分写成分子/分母,要求分子小于分母,且它们没有公因子。如果结果的整数部分为0,则只输出分数部分。输入样例1:5

2020-10-26 23:17:03 680

原创 L1-006 连续因子 (20分) -- 两种方法

一个正整数 N 的因子中可能存在若干连续的数字。例如 630 可以分解为 3×5×6×7,其中 5、6、7 就是 3 个连续的数字。给定任一正整数 N,要求编写程序求出最长连续因子的个数,并输出最小的连续因子序列。输入格式:输入在一行中给出一个正整数 N(1<N<2​^31)输出格式:首先在第 1 行输出最长连续因子的个数;然后在第 2 行中按 因子1*因子2*……*因子k 的格式输出最小的连续因子序列,其中因子按递增顺序输出,1 不算在内。输入样例:630输出样例:35*6*

2020-10-26 20:40:07 700

原创 Updating a Dictionary UVA - 12504(STL)

题目很好理解,提醒几点:1.value可能很长,选字符串存储 映射关系选用map2.每个字典都可以是空的,在映射的时候不要映射空的 字符串,因为它不是key,也不是value3.每组数据后都要加空行4.同一组测试数据中,“No changes” 与 “+ - *”不会同时输出代码如下:char ch;void input (map<string, string>&amp...

2020-03-12 11:06:26 231

原创 Vanya and Exams CodeForces - 492C(贪心)

https://vjudge.net/problem/CodeForces-492C题目不介绍了,测试数据也有问题,用int试了好久没过去吃一堑 涨一智using namespace std;typedef long long LL;const int maxn = 1e5+10;struct P { LL x, y; P(LL x = 0, LL y = 0): x(...

2020-03-11 18:22:24 187

原创 Fire Game FZU - 2150(双起点bfs)

两个熊孩子在n*m的平地上放火玩,#表示草,两个熊孩子分别选一个#格子点火,火可以向上向下向左向右在有草的格子蔓延,点火的地方时间为0,蔓延至下一格的时间依次加一。求烧完所有的草需要的最少时间。Input第一行,输入一个T,表示有T组测试数据。 每组数据包含n,m分别表示行和列1 <= T <=100, 1 <= n <=10, 1 <= m <=10O...

2020-03-11 15:58:13 219

原创 Boxes in a Line UVA - 12657(双向链表)

题目:有N个盒子排成一列,从左至右编号1~n,现有四种操作,分别如下:1 X Y 将编号为X的盒子置于编号为Y的盒子的左边(相邻)2 X Y 将编号为X的盒子置于编号为Y的盒子的右边(相邻)3 X Y 将编号为X的盒子和编号为Y的盒子交换位置4 反转整个排列在M次操作之后,求坐标为奇数的盒子,其编号之和例如,如果n = 6,则在执行1 1 4之后,该行变为2 3...

2020-03-11 14:26:02 238

原创 【学习宽搜 不如进来看看】Patrol Robot UVA - 1600(条件最短路;bfs进阶)

题目ProblemA robot has to patrol around a rectangular area which is in a form of m × n grid (m rows and n columns). The rows are labeled from 1 to m. The columns are labeled from 1 to n. A cell (i, j)...

2020-03-10 10:34:51 223

原创 Compound Words UVA - 10391(字符串搜索)

ProblemYou are to find all the two-word compound words in a dictionary. A two-word compound word is a word in the dictionary that is the concatenation of exactly two other words in the dictionary.So...

2020-03-09 22:30:26 141

原创 Excuses, Excuses! POJ - 1598(字符串)

题目:Problem伊藤法官要求你编写一个程序,该程序将在一堆借口中识别关键字。无论大小写,都可以匹配关键字。Input程序的输入将包含多组数据。每组的第1行将恰好包含两个整数。第一个数字(1 <= K <= 20)定义搜索中要使用的关键字数。第二个数字(1 <= E <= 20)定义了要搜索的借口数。第2行到第K + 1行分别只包含一个关键字。K + 2行到K +...

2020-03-09 16:30:53 185

原创 不容易系列之(3)—— LELE的RPG难题 HDU - 2045(递推)

题目:有排成一行的n个方格,用红(Red)、粉(Pink)、绿(Green)三色涂每个格子,每格涂一色,要求任何相邻的方格不能同色,且首尾两格也不同色.输入方格数 n,求全部的满足要求的涂法 F[n].思路:同样是个递推问题,不是太好想,这里模拟一下:可见,当 n > 3 时,F(n) 由 F(n-1) 和 F(n-2) 决定,分为两类:① n-1 与 1 同色,n有两种选择,n-...

2020-03-07 19:41:19 286

原创 不容易系列之(4)——考新郎 HDU - 2049 (递推—错排—组合数)

题目:Description国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的:首先,给每位新娘打扮得几乎一模一样,并盖上大大的红盖头随机坐成一排;然后,让各位新郎寻找自己的新娘.每人只准找一个,并且不允许多人找一个.最后,揭开盖头,如果找错了对象就要当众跪搓衣板…假设一共有N对新婚夫妇,其中有...

2020-03-07 15:40:23 239

原创 超级楼梯 HDU - 2041(递归 + Fibonacci数列)

题目:有一楼梯共 M 级,刚开始时你在第一级,若每次只能跨上一步或两步,只上不下,要走上第M级,共有多少种走法?分析:其实找找规律也能得出结论:答案组是一个 类斐波那契数列,那么我们静下心来分析一下原理,也为后面学习动规打打基础:倒推一下,假设再跨一次即抵达M,那么这一跨仅两种可能,一步两步 一步两步一步一步是爪牙… 这样我们包装这一跨,推到上一跨,也是只有两种可能,以此类推直到第一跨,...

2020-03-07 12:10:41 373

原创 Digit Counting UVA - 1225 (打表 + 数数字)

题目给出正整数n,得到序列12345678910111213141516171819…一直到n,求出0~9每个数字出现次数布拉布拉一道比较经典的数数字问题,不过这道相比其他难度较低,限时足够长,数据范围足够小,所以解法不唯一,这里博主直接选择打表 迅速简洁/-Time 0 ms/-Date 2020.03.07int a[10000][10]={0};int main() {int...

2020-03-07 11:33:44 174

原创 OR in Matrix CodeForces - 486B(或运算简单题)

或|:同0为0,其余为1与&:同1为1,其余为0异或^:同为1,异为0题目细节参考链接: https://vjudge.net/problem/CodeForces-486B思路:给出B矩阵,用定义或运算推理A矩阵,Bij 为对矩阵 A 中 i 行 j 列 的所有逻辑值进行定义或运算后的值。初始化A矩阵为真(memset初始化-1),0是比较好处理的,若 Bij 为0,则将...

2020-03-07 10:23:23 159

原创 Divisors UVA - 294(唯一分解定理 + 筛法)

题目大概:给出一个闭区间,问该闭区间内哪个数的因数最多,有多少个,若出现并列输出最小的题目链接:https://vjudge.net/problem/UVA-294思路:根据唯一分解定理,每个正整数 X 的因数个数可以套用公式:(e1 + 1) * (e2 + 1) * ..* (ek + 1)其中k为X的质因数个数,ei 为完全分解后第 i 个质因数的指数那么问题就简单多了,求出质...

2020-03-06 21:33:01 172

原创 Cutting Sticks UVA - 10003(dp不太懂ฅʕ•̫͡•ʔฅ慢慢来吧)

题目:给出木棍长度和固定的切点,由于切割顺序不同,费用会有所不同,收费规则:每一刀的费用为当前被切段长度,总费用为所有费用之和,求最小费用。如:长度10,切点坐标2,5,那么cost_min = 10 + 5 = 15(格式略)题目详情参考链接 https://vjudge.net/problem/UVA-10003博主有话说:动态规划刚接触,对dp真是不太懂,边摸索边借鉴才整出的代码,慢...

2020-03-06 19:45:10 370

原创 Pots POJ - 3414(BFS + 打印操作)

题目:ProblemYou are given two pots, having the volume of A and B liters respectively. The following operations can be performed:FILL(i) fill the pot i (1 ≤ i ≤ 2) from the tap;DROP(i) em...

2020-03-06 16:23:53 281

原创 非常可乐 HDU - 1495(别较真;BFS基础题)

题目:有两个空杯子容量分别为A,B,还有一罐满满的可乐,体积为S,它们三个之间可以相互倒可乐 (都是没有刻度的,且 S==N+M,101>S>0,A>0,B>0) ,你来判断他们是否能平分,如果能则输出倒可乐的最少的次数,如果不能输出"NO"。 https://vjudge.net/problem/HDU-1495俺来叨叨两句:就是三个杯子倒水的问题,因为和一定,知两个杯子即可求另...

2020-03-06 16:06:34 341

原创 Anagram POJ - 1256(字符串 + 全排列 + 编码)

题目大概:给定字符集(可存在重复字符),按“定义字典序LEX”输出所有排列LEX定义如下:‘A’<‘a’<‘B’<‘b’<…<‘Z’<‘z’链接: https://vjudge.net/problem/POJ-1256思路:乍一看就是摆弄字符串,全排列就可以解决,不过需多一步编码类型A B…Za b…z编码(ch - ‘A’...

2020-03-06 12:26:55 279

原创 Shuffle'm Up POJ - 3087(字符串 + 模拟)

题目冗长直接上链接了https://vjudge.net/problem/POJ-3087思路模拟洗牌的过程,洗一次对比一次同时ans++,出现重复说明循环了;没重复的情况下出现目标串,输出ans代码/-Time 0 ms/-Data 2020.03.05string s1, s2, r; //两动态串 以及目标合串string r1, r2; //目标分串 两部分int ...

2020-03-05 20:47:39 153

原创 Parentheses Balance UVA - 673(栈解析表达式)

给出一串序列,仅包含 ( ) [ ] ,判断其是否合法,规则如下:1.空序列合法2.若A合法,B合法,则AB也合法3.若A合法,则(A),[A]也合法栈的用武之处,不过要注意空栈的判断,否则会Runtime Error两种处理方式:inline int F (char ch){ if(ch=='(') return -1; if(ch==')') return 1;...

2020-03-05 19:45:26 205

原创 A Knight's Journey POJ - 2488(DFS棋盘)

https://vjudge.net/problem/POJ-24881//因为符合要求的起点一定是(A,1),故字符转化为整数后从(0,0)开始搜索2//记录父结点,递归倒序输出,输入和输出的行列位置是相反的3//8个方向是有先后的,应按照字典序排序4//因为测试数据较少且范围较少,不用过多剪枝;甚至于可以直接贴答案( ̄y▽, ̄)╭ #include <cstdio>#...

2020-03-05 18:22:55 203

原创 Substrings POJ - 1226(水题;字符串)

题目:提供区分大小写字母的字符串,找到最大的字符串X,以便可以将X或其逆序作为任何给定字符串的子字符串找到,输出找到的最大字符串的长度。查找子串过程还可以用s.find(sub, 0) 返回首字符下标核心代码:int n;string s[110];bool ok (string r, int start, int len) { r.assign(r, start, len);...

2020-03-05 11:21:49 201

原创 Following Orders POJ - 1270(全排列 + 字符比较)

从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。公式:全排列数f(n)=n!(定义0!=1)

2020-03-05 10:52:36 233

原创 产生冠军 HDU - 2094(STL水题)

Problem有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。球赛的规则如下:如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。如果A打败了B,B又打败了C,而且,C又打败了A,那么A、B、C三者都不可能成为冠军。根据这个规则,无需循环较量,或许就能确定冠军。你的任务就是面对一群比赛选手,在经过了若干场撕杀之后,确定是否已经实际上产生...

2020-03-05 09:23:02 709

原创 最少拦截系统 HDU - 1257(水题;贪心)

题目:某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹.怎么办呢?多搞几套系统呗!你说说倒蛮容易,成本呢?成本是个大问题啊.所以俺就到这里来求救了,请帮助计算一下最少需要多少套拦...

2020-03-04 22:35:21 466

原创 迷宫问题 POJ - 3984(BFS + 打印路径)

题目点它→:https://vjudge.net/problem/POJ-3984又是一个打印路径的迷宫,没有太多细节,已保证有唯一解,这里给出两种BFS存路径方法:1.正向BFS求出最短路,记录每个点(可到达)到起点距离;反向BFS朝距离差为1的方向搜索到起点,然后递归倒序打印#include <cstdio>#include <cstring>#include...

2020-03-04 20:58:46 232

原创 Ride to School POJ - 1922(思路很重要)

Problem北京大学的许多研究生都住在万柳校区,距主校区盐源4.5公里。万流的学生必须乘公共汽车或骑自行车去学校。由于北京的交通不畅,许多学生选择骑自行车。我们可以假设除“查理”以外的所有学生都以固定的速度从万柳到盐源。查理(Charley)是一位有着不同骑行习惯的学生,他总是试图跟随另一位骑手,以避免独自骑行。当查理到达万柳的大门时,他会寻找一个出发去盐源的人。如果找到某人,他将跟随该骑手...

2020-03-04 16:29:43 422

原创 棋盘问题 POJ - 1321(深搜水题)

题目:Soucehttps://vjudge.net/problem/POJ-1321Problem在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,...

2020-03-04 15:15:30 289

原创 Online Judge HDU - 1073 (字符串)

https://vjudge.net/problem/HDU-1073这里不介绍题目了,长驱直入 直奔主题:我们暂时定义需要核对的字符为"有效字符", 其他的为"空白符"1.一定要认真读题,题目中The data will at most 5000 characters. 首先START 和 END 之间的所有都是 data,然后为什么强调字符数不强调行数呢?自己思考后发现,太##妙了!仅...

2020-03-03 23:01:35 259

原创 Dungeon Master POJ - 2251 & 胜利大逃亡 HDU - 1253 (BFS 三维迷宫)

总结两个非常相似的题目:题目一 Dungeon Master:https://vjudge.net/problem/POJ-2251题目二 胜利大逃亡:https://vjudge.net/problem/HDU-1253说明:两题都是三维迷宫逃脱类,很相似,几处小不同:题目一没有时间限制,只问逃不逃得出去及最短时间;但是出生点终点不固定题目二加上时间限制;但出生点和终点固定;cin也...

2020-03-03 20:08:23 282

原创 Yeehaa! POJ - 1799(简单几何)

https://vjudge.net/problem/POJ-1799纯数学题,不算难,借助直角三角形求解:cin >> R >> n;double a = sin(PI / n);r = a * R / (a + 1);printf("%.3lf\n\n", r);//别忘空行...

2020-03-03 16:36:44 192

原创 Sorting by Swapping POJ - 1674(变相排序)

先说说题目想让我们干什么:给定一个从1到n的数字排列,我们总是可以通过交换数字对来获得序列1,2,3,…,n 例如,如果初始序列为2、3、5、4、1,我们可以按以下方式对其进行排序:2 3 5 4 11 3 5 4 21 3 2 4 51 2 3 4 5在这里三个交换被用过。给定特定的排列,我们至少需要进行多少次交换。https://vjudge.net/problem/POJ-16...

2020-03-03 13:40:59 276

原创 Oil Deposits UVA - 572 HDU - 1241(dfs连通块)

https://vjudge.net/problem/UVA-572https://vjudge.net/problem/HDU-1241思路:这俩是一样的,主函数内循环遍历每个块,若该块有油且未标记,ans++并作为起点dfs,将可到达的油田全部标记,输出ans这里提供两种 八向走法 的代码: for(int i=-1;i<=1;i++) for(int j=-1...

2020-03-03 09:50:26 202

原创 Distance on Chessboard POJ - 1657(国际象棋;水题)

国际象棋的棋盘是黑白相间的8 * 8的方格,棋子放在格子中间。如下图所示:王、后、车、象的走子规则如下:王:横、直、斜都可以走,但每步限走一格。后:横、直、斜都可以走,每步格数不受限制。车:横、竖均可以走,不能斜走,格数不限。象:只能斜走,格数不限。写一个程序,给定起始位置和目标位置,计算王、后、车、象从起始位置走到目标位置所需的最少步数。思路:初步构思可以将其中一个点位于点(0...

2020-03-03 09:34:46 639

原创 FatMouse' Trade HDU - 1009(贪心)

怎么说呢,相信这题也卡了不少人,评价一下就是: 真是扣字扣到极致了!能看到我的文章我很欣赏你,那么请让我带你重新理解下这道题:先说一下题目:原题:FatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse containing his favorite food, ...

2020-03-02 21:53:39 252

原创 Tempter of the Bone HDU - 1010(DFS + 剪枝)

本来以为是水题,居然TEL。。。 ┭┮﹏┭┮ // 不过还好过了https://vjudge.net/problem/HDU-1010#author=boboyang同样是走迷宫,不过有意思的是,它不让你找最短路,而是问能否恰好的在第T分钟逃出(抵达door位置)哎呦嘿放弃bfs果断dfs难不倒我 ——>> 然后就一直TEL》。。。需要剪枝!!!1.搜索过程中只要答案确定立刻...

2020-03-02 19:29:04 184

原创 sort HDU - 1425(花样排序)

给出n个整数,从大到小输出其中前m大的数(0<n,m<1000000) 且 所有整数∈[-500000,500000]1.直接快排 for (int i = 0; i < n; i++) scanf("%d", &a[i]); sort(a, a + n); for (int i = n - 1; i >= n-m; i--) prin...

2020-03-02 14:55:52 237

原创 Matrix Chain Multiplication UVA - 442(栈 + 模拟 + 表达式解析)

题目:以单个大写字母代替矩阵,第一行输入矩阵种类的数量,后输入各矩阵代替字母及维度(行数 列数)然后输入多行矩阵表达式,输出每个表达式乘法计算次数注:1.每对括号内有且必有两个矩阵,如果有套娃现象 例如:(A(BC))将 (BC) 看作一个矩阵2.乘法不合规时输出 “error” ,即不满足 “前矩阵的列数 = 后矩阵的行数”Sample Input9A 50 10B 10 20...

2020-02-24 15:44:36 225

空空如也

空空如也

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

TA关注的人

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