自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 1261: [蓝桥杯2015初赛]移动距离

题目描述X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3… 当排满一行时,从下一行相邻的楼往反方向排号。比如:当小区排号宽度为6时,开始情形如下:1 2 3 4 5 612 11 10 9 8 713 14 15 …我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移动距离(不能斜线方向移动)输入输入存在多组测试数据输入为3个整数w m n,空格分开,都在1到10000范围内w为排号宽度,m,n为待计算的楼号。输出要求输出一个整数

2020-07-31 12:00:06 165

原创 1260: [蓝桥杯2015初赛]加法变乘法

题目描述我们都知道:1+2+3+ … + 49 = 1225现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015比如:1+2+3+…+1011+12+…+2728+29+…+49 = 2015 就是符合要求的答案。请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交。(对于示例,就是提交10)。输出注意:需要你提交的是一个整数,不要填写任何多余的内容。这一题我们对这个等式进行变形就可以了1225 = 1 + 2 + 3 + ···+ i - 1 + (i) +( i

2020-07-31 11:31:32 306 1

原创 1259: [蓝桥杯2015初赛]三羊献瑞【算法:瞪眼法/枚举】

题目描述观察下面的加法算式:其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。输出请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。法一:瞪眼法(数学计算)我们可以用英文字母将这个等式替换掉,替换结果为:我们用s1、s2、s3来分别表示三个整数【1】因为S3中的E是S1中的A和S2中的E的和,所以,E的值为1打字实在是太慢了,我在图上标记我的过程啦上面是法一,通过数学的角

2020-07-30 21:30:21 2563 2

原创 to_string函数【可使其他类型转为字符串类型】

to_string()函数的作用为将数值转化为字符串。返回对应的字符串。to_string()的函数原型:string to_string (int val);string to_string (long val);string to_string (long long val);string to_string (unsigned val);string to_string (unsigned long val);string to_string (unsigned long long va

2020-07-30 17:49:02 1811

原创 1258: [蓝桥杯2015初赛]奖券数目【算法:模拟】(三种方法)

题目描述有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码。主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。输出请提交该数字(一个整数),不要写任何多余的内容或说明性文字。这道题目数的范围为(10000-99999),很小,所以,直接暴力来求就可以了。方案1,循环这些五位数,将这些五位数转换为字符串,判断字符串内是否含

2020-07-30 17:42:14 544

原创 1256: [蓝桥杯2015初赛]垒骰子[算法:快速幂】(第三篇)

题目描述赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥!我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。atm想计算一下有多少种不同的可能的垒骰子方式。两种垒骰子方式相同,当且仅当这两种方式中对应高度的骰子的对应数字的朝向都相同。由于方案数可能过多,请输出模 10^9 + 7

2020-07-30 11:08:05 491 1

原创 1256: [蓝桥杯2015初赛]垒骰子【算法:递推】(第二篇)

题目描述赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥!我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。atm想计算一下有多少种不同的可能的垒骰子方式。两种垒骰子方式相同,当且仅当这两种方式中对应高度的骰子的对应数字的朝向都相同。由于方案数可能过多,请输出模 10^9 + 7

2020-07-30 07:45:47 296

原创 1256: [蓝桥杯2015初赛]垒骰子【算法:递归】(第一篇)

题目描述赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体。经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥!我们先来规范一下骰子:1 的对面是 4,2 的对面是 5,3 的对面是 6。假设有 m 组互斥现象,每组中的那两个数字的面紧贴在一起,骰子就不能稳定的垒起来。atm想计算一下有多少种不同的可能的垒骰子方式。两种垒骰子方式相同,当且仅当这两种方式中对应高度的骰子的对应数字的朝向都相同。由于方案数可能过多,请输出模 10^9 + 7

2020-07-29 22:36:19 883 1

原创 欧几里得算法

int gcd(int a, int b){ return b ? gcd(b, a % b) : a;//时间复杂度O(logn)}

2020-07-25 19:29:06 68

原创 1253: [蓝桥杯2015初赛]牌型种数[算法:dfs】

题目描述小明被劫持到X赌城,被迫与其他3人玩牌。一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。这时,小明脑子里突然冒出一个问题:如果不考虑花色,只考虑点数,也不考虑自己得到的牌的先后顺序自己手里能拿到的初始牌型组合一共有多少种呢?输出请输出该整数,不要输出任何多余的内容或说明文字。#include <iostream>using namespace std;int cnt, sum;void dfs(int u){ if (sum &gt

2020-07-25 08:54:01 881

原创 1255: [蓝桥杯2015初赛]饮料换购【数学】

题目描述乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去(但不允许暂借或赊账)。请你计算一下,如果小明不浪费瓶盖,尽量地参加活动。那么,对于他初始买入的n瓶饮料,最后他一共能喝到多少瓶饮料。输入输入存在多组测试数据每组测试数据输入一行包含一个正整数n(1<=n<=10000)输出对于每组数据输出一行,包含一个整数,表示实际得到的饮料数样例输入 Copy100101样例输出 Copy149151#includ

2020-07-24 22:54:43 322

原创 1252: [蓝桥杯2015初赛]奇妙的数字

题目描述小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。你能猜出这个数字是多少吗?输出请输出该数字,不要输出任何多余的内容。#include <cstring>#include <iostream>#include <algorithm>using namespace std;int main(){ char s1[10], s2[10]; for (int i = 32; i <= 98; i

2020-07-24 22:53:13 764

原创 1251: [蓝桥杯2015初赛]星系炸弹

题目描述在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。每个炸弹都可以设定多少天之后爆炸。比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。有一个贝塔炸弹,a年b月c日放置,定时为n天,请你计算它爆炸的准确日期。输入输入存在多组数据,每组数据输入一行,每一行输入四个正整数a,b,c,n输入保证日期在1000-01-01到2020-01-01之间,且日期合法。n不超过1000输出请填写该日期,格式为 yyyy-mm-dd 即4位年

2020-07-24 22:51:36 206

原创 string::npos的使用方法

作为一个返回值(return value)表示没有找到匹配项#include <iostream>#include <cstring>#include <algorithm>#include <vector>using namespace std;int main(){ string s = "abcd7efg"; if (s.find('7') == string::npos) cout << "no f

2020-07-24 21:12:21 222

原创 continue的使用注意

先上代码#include <iostream>using namespace std;int main(){ int cnt = 0; int t = 0; do{ t ++; int i = 0; for (; i < 10; i ++ ) if(i == 5) break; if (i <= 5) continue; cnt ++; }

2020-07-24 20:39:06 798

原创 如何判断字符串S1是不是字符串S的旋转字符串【S+S去重原理】

要判断某一个字符串S1是不是字符转S的旋转字符串等价为判断字符转S1是不是字符串S+S的字串证明如下:我们思考了一下,将一个字符串旋转后的顺序不就是将原本在头部位置的成员放到尾部吗,我们get it所以如果要判断一个字符串S1是不是字符转S的旋转字符串就是要判断字符转S1是不是字符串S+S的字串...

2020-07-24 20:16:58 552

原创 全排列 next_permutation() 函数的用法

先来用代码来解释一下next_permutation()函数得用法#include <iostream>#include <algorithm>using namespace std;int main(){ int a[3] = {2, 1, 3}; sort(a, a + 3); //注意,在使用next_permutation()函数之前,要对数组先按升序排一下序,不然,只能找到这个顺序后的排序,之前的排序不会找到 do{

2020-07-24 13:44:24 593

原创 1254: [蓝桥杯2015初赛]手链样式

题目描述小明有3颗红珊瑚,4颗白珊瑚,5颗黄玛瑙。他想用它们串成一圈作为手链,送给女朋友。现在小明想知道:如果考虑手链可以随意转动或翻转,一共有多少不同的组合样式?输出请你输出该整数。不要输出任何多余的内容或说明性的文字。我们知道圆排列就是在直排列后再除以排列的个数那么我们先来看看直排列该怎么排列首先,我们给3个红珊瑚进行排列,也就是C3 12, 然后再给4白珊瑚排列,也就是C4 9 最后剩下的5个空缺就留给黄玛瑙了因为种类只有三种,所以我们在进行某一种珊瑚排序的时候,不需要考虑顺序。所

2020-07-24 12:39:51 835 2

原创 1250: [蓝桥杯2015初赛]方程整数解【算法:暴力】

题目链接<-点他题目描述方程: a^2 + b^2 + c^2 = 1000这个方程有正整数解吗?有:a,b,c=6,8,30 就是一组解。求出 a^2 + b^2 + c^2 = n(1<=n<=10000)的所有解,解要保证c>=b>=a>=1。输入存在多组测试数据,每组测试数据一行包含一个正整数n(1<=n<=10000)输出如果无解则输出"No Solution"。如果存在多解,每组解输出1行,输出格式:a b c,以一个空格分隔按

2020-07-23 11:45:25 391

原创 牛客—最短路【算法:spfa】

链接:https://ac.nowcoder.com/acm/problem/14369来源:牛客网题目描述简单暴力的题目要求:给定一个有n个顶点(从1到n编号),m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路。输入描述:第一行两个整数n, m。接下来的m行,每行有三个整数u, v, l,表示u到v有一条长度为l的边。输出描述:共n-1行,第i行表示1号点到i+1号点的最短路。示例1输入复制3 31 2 -12 3 -13 1 2输

2020-07-21 22:10:49 550

原创 最短路问题应该使用的算法总结

2020-07-21 22:01:27 191

原创 力扣1.两数之和 {所用算法:1.【暴力】、2.【哈希表】}

力扣1.两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]做法暴力暴力1暴力2哈希表哈希表1暴力暴力1//j在前,i在后,使用二维数组res来装答案;//需要注意的

2020-07-21 08:53:21 124

原创 使用Dijkstra算法求最短路【使用于稠密图】

题目描述给定一个n个点m条边的有向图,图中可能存在重边和自环,所有边权均为正值。请你求出1号点到n号点的最短距离,如果无法从1号点走到n号点,则输出-1。输入格式第一行包含整数n和m。接下来m行每行包含三个整数x,y,z,表示存在一条从点x到点y的有向边,边长为z。输出格式输出一个整数,表示1号点到n号点的最短距离。如果路径不存在,则输出-1。数据范围1≤n≤500,1≤m≤105,图中涉及边长均不超过10000。输入样例:3 31 2 22 3 11 3 4输出样例:.

2020-07-17 17:33:33 533

原创 牛客算法题——NC15553 数学考试【所用算法:前缀和】

链接:https://ac.nowcoder.com/acm/problem/15553来源:牛客网题目描述今天qwb要参加一个数学考试,这套试卷一共有n道题,每道题qwb能获得的分数为ai,qwb并不打算把这些题全做完,他想选总共2k道题来做,并且期望他能获得的分数尽可能的大,他准备选2个不连续的长度为k的区间,即[L,L+1,L+2,…,L+k-1],[R,R+1,R+2,…,R+k-1](R >= L+k)。输入描述:第一行一个整数T(T<=10),代表有T组数据接下来一行

2020-07-16 17:27:01 202

原创 前缀和【超详细讲解前缀和】

输入一个长度为n的整数序列。接下来再输入m个询问,每个询问输入一对l, r。对于每个询问,输出原序列中从第l个数到第r个数的和。输入格式第一行包含两个整数n和m。第二行包含n个整数,表示整数数列。接下来m行,每行包含两个整数l和r,表示一个询问的区间范围。输出格式共m行,每行输出一个询问的结果。数据范围1≤l≤r≤n,1≤n,m≤100000,−1000≤数列中元素的值≤1000输入样例:5 32 1 3 6 41 21 32 4输出样例:3610这一题就是最纯

2020-07-16 17:20:56 47278 14

原创 【第八届蓝桥杯省赛C++B组】K倍区间【所用算法:前缀和】

给定一个长度为 N 的数列,A1,A2,…AN,如果其中一段连续的子序列 Ai,Ai+1,…Aj 之和是 K 的倍数,我们就称这个区间 [i,j] 是 K 倍区间。你能求出数列中总共有多少个 K 倍区间吗?输入格式第一行包含两个整数 N 和 K。以下 N 行每行包含一个整数 Ai。输出格式输出一个整数,代表 K 倍区间的数目。数据范围1≤N,K≤100000,1≤Ai≤100000输入样例:5 212345输出样例:6因为这个题的做法大家基本上都明白是利用的前列和,所以

2020-07-15 18:06:12 244

原创 数组模拟单链表,快速实现常规操作【单链表】

历时三小时,终于将题解写出来了。实现一个单链表,链表初始为空,支持三种操作:(1) 向链表头插入一个数;(2) 删除第k个插入的数后面的数;(3) 在第k个插入的数后插入一个数现在要对该链表进行M次操作,进行完所有操作后,从头到尾输出整个链表。注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了n个数,则按照插入的时间顺序,这n个数依次为:第1个插入的数,第2个插入的数,…第n个插入的数。输入格式第一行包含整数M,表示操作次数。接下来M行,每行包含一个操作命令,操

2020-07-13 11:59:47 142

原创 走迷宫【所用算法——bfs】

给定一个n*m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以走的路,1表示不可通过的墙壁。最初,有一个人位于左上角(1, 1)处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角(n, m)处,至少需要移动多少次。数据保证(1, 1)处和(n, m)处的数字为0,且一定至少存在一条通路。输入格式第一行包含两个整数n和m。接下来n行,每行包含m个整数(0或1),表示完整的二维数组迷宫。输出格式输出一个整数,表示从左上角移动至右下角的

2020-07-12 22:39:44 299

原创 牛客题目:走出迷宫【所用算法——dfs】

链接来源:牛客网输出描述:每组数据输出一行,如果小明能够从起点走到终点,那么输出Yes,否则输出No示例1输入3 3S……E…3 3S####E输出YesNodfs为深搜算法,他会一直走到底所以用dfs算法,一定如果有通路的话,他一定可以从头走到尾。#include <iostream>#include <cstring>using namespace std;const int N = 510;int n, m, t;//t标记是

2020-07-12 18:58:10 422

原创 n-皇后问题【所用算法——dfs】

n-皇后问题是指将 n 个皇后放在 n∗n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。现在给定整数n,请你输出所有的满足条件的棋子摆法。输入格式共一行,包含整数n。输出格式每个解决方案占n行,每行输出一个长度为n的字符串,用来表示完整的棋盘状态。其中”.”表示某一个位置的方格状态为空,”Q”表示某一个位置的方格上摆着皇后。每个方案输出完成后,输出一个空行。输出方案的顺序任意,只要不重复且没有遗漏即可。数据范围1≤n≤9输入样例:4

2020-07-12 08:41:00 579

原创 全排列问题(所用算法:DFS,最基础的DFS算法)【详解版】

洛谷题库P1706 全排列问题 <— 题目链接点这里题目描述输出自然数 1 到 n 所有不重复的排列,即 nn 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。输入格式一个整数 n。输出格式由 1 ∼ n 组成的所有不重复的数字序列,每行一个序列。每个数字保留 5 个场宽。输入输出样例输入 #13输出 #11 2 31 3 22 1 32 3 13 1 23 2 1说明/提示1 ≤

2020-07-11 08:41:02 1660 2

原创 [蓝桥杯2018初赛]日志统计。 所用算法:双指针算法

1373: [蓝桥杯2018初赛]日志统计 <—做题链接1373: [蓝桥杯2018初赛]日志统计时间限制: 1 Sec 内存限制: 256 MB提交: 249 解决: 73[状态] [提交] [命题人:外部导入]题目描述小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。 其中每一行的格式是:ts id。表示在ts时刻编号id的帖子收到一个"赞"。 现在小明想统计有哪些帖子曾经是"热帖"。 如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明

2020-07-10 20:56:14 277

原创 [蓝桥杯2019初赛]等差数列。所用算法:数论

等差数列 <–做题链接请点它1466: [蓝桥杯2019初赛]等差数列时间限制: 1 Sec 内存限制: 256 MB提交: 750 解决: 146[状态] [提交] [命题人:外部导入]题目描述数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列,只记得其中N 个整数。现在给出这N 个整数,小明想知道包含这N 个整数的最短的等差数列有几项?输入输入的第一行包含一个整数N。第二行包含N 个整数A1.A2,..., AN。(注意A1<=AN 并

2020-07-10 14:09:06 500

原创 1261: [蓝桥杯2015初赛]移动距离 [题目详解]

题目描述X星球居民小区的楼房全是一样的,并且按矩阵样式排列。 其楼房的编号为1,2,3... 当排满一行时,从下一行相邻的楼往反方向排号。 比如:当小区排号宽度为6时,开始情形如下: 1 2 3 4 5 6 12 11 10 9 8 7 13 14 15 ..... 我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移动距离 (不能斜线方向移动) 输入输入存在多组测试数据 输入为3个整数w m n,空格分开,都在1到10000范围内 w为排号宽度,m,n为待计

2020-07-06 08:29:04 1218

原创 [蓝桥杯]连号区间数[题目详解]

题目描述小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮助。输入第一行是一个正整数N (1 <= N <= 50000), 表示全排列的规模。第二行是N个不同的数字Pi(1 &l

2020-07-05 22:54:17 3050

原创 题目:[蓝桥杯]翻硬币。算法:递推

1428: [蓝桥杯]翻硬币时间限制: 1 Sec 内存限制: 256 MB提交: 51 解决: 39[状态] [提交] [命题人:外部导入]题目描述小明正在玩一个“翻硬币”的游戏。桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零)。比如,可能情形是:oo*oooo如果同时翻转左边的两个硬币,则变为:oooo***oooo现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?

2020-07-03 15:41:52 1005

原创 推荐一个可以做历年蓝桥杯真题的网站

有一些想刷蓝桥杯拿奖的同学们不知道改在那里刷题(不想在官网下刷题,而且题目还是非常少,还要VIP,不能白嫖 )那在这里,我来分享一个偶然发现的宝藏OJ,就是下面这个啦!可以点开浏览一下。New Online Judge为了方便大家了解,我来给大家放几张截图。第一点:网站内容展示画面简单,内容简洁,方柏便大家做题,也不收费第二点,界面每一页有一百道题,很直观其他的也就不多说了,如果想刷蓝桥杯,或者其他的题目,这个OJ还算不错而且题目都是比较基础点的,对新手比较友好## 如果你觉得还不

2020-07-02 22:26:54 43168 12

空空如也

空空如也

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

TA关注的人

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