![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯
蓝桥杯真题训练
永远做自己
这个作者很懒,什么都没留下…
展开
-
[蓝桥杯2016决赛]反幻方
题目描述我国古籍很早就记载着2 9 47 5 36 1 8这是一个三阶幻方。每行每列以及对角线上的数字相加都相等。下面考虑一个相反的问题。可不可以用 1~9 的数字填入九宫格,使得:每行每列每个对角线上的数字和都互不相等呢?这应该能做到。比如:9 1 28 4 37 5 6你的任务是搜索所有的三阶反幻方。并统计出一共有多少种。旋转或镜像算同一种。比如:9 1 2 7 8 9 2 1 98 4 3 5 4 1 3 4 87 5 6 6原创 2021-04-13 19:58:58 · 129 阅读 · 0 评论 -
[蓝桥杯2016决赛]凑平方数
题目描述把0~9这10个数字,分成多个组,每个组恰好是一个平方数,这是能够办到的。比如:0, 36, 5948721再比如:10985247361, 25, 63907840, 4, 289, 15376等等…注意,0可以作为独立的数字,但不能作为多位数字的开始。分组时,必须用完所有的数字,不能重复,不能遗漏。如果不计较小组内数据的先后顺序,请问有多少种不同的分组方案?输出输出一个整数表示答案#include<bits/stdc++.h>using namespace原创 2021-04-12 14:34:50 · 111 阅读 · 0 评论 -
1306: [蓝桥杯2016决赛]一步之遥
题目描述从昏迷中醒来,小明发现自己被关在X星球的废矿车里。矿车停在平直的废弃的轨道上。他的面前是两个按钮,分别写着“F”和“B”。小明突然记起来,这两个按钮可以控制矿车在轨道上前进和后退。按F,会前进97米。按B会后退127米。透过昏暗的灯光,小明看到自己前方1米远正好有个监控探头。他必须设法使得矿车正好停在摄像头的下方,才有机会争取同伴的援助。或许,通过多次操作F和B可以办到。矿车上的动力已经不太足,黄色的警示灯在默默闪烁…每次进行 F 或 B 操作都会消耗一定的能量。小明飞快地计算,至少原创 2021-04-12 10:06:15 · 92 阅读 · 0 评论 -
[蓝桥杯2016决赛]路径之谜
题目描述小明冒充X星球的骑士,进入了一个奇怪的城堡。城堡里边什么都没有,只有方形石头铺成的地面。假设城堡地面是 n x n 个方格。按习俗,骑士要从西北角走到东南角。可以横向或纵向移动,但不能斜着走,也不能跳跃。每走到一个新方格,就要向正北方和正西方各射一箭。(城堡的西墙和北墙内各有 n 个靶子)同一个方格只允许经过一次。但不必走完所有的方格。如果只给出靶子上箭的数目,你能推断出骑士的行走路线吗?有时是可以的,比如图中的例子。本题的要求就是已知箭靶数字,求骑士的行走路径(测试数据保证路径唯一转载 2021-04-11 14:17:09 · 116 阅读 · 0 评论 -
0-1背包问题
本片博客根据B站up主灯神的视频而写,链接如下:[https://www.bilibili.com/video/BV1U5411s7d7?from=search&seid=16347285338406326929](https://www.bilibili.com/video/BV1U5411s7d7?from=search&seid=16347285338406326929)原创 2021-04-08 14:39:49 · 262 阅读 · 0 评论 -
[蓝桥杯2016决赛]随意组合
题目描述小明被绑架到X星球的巫师W那里。其时,W正在玩弄两组数据 (2 3 5 8) 和 (1 4 6 7)他命令小明从一组数据中分别取数与另一组中的数配对,共配成4对(组中的每个数必被用到)。小明的配法是:{(8,7),(5,6),(3,4),(2,1)}。巫师凝视片刻,突然说这个配法太棒了!因为:每个配对中的数字组成两位数,求平方和,无论正倒,居然相等:87^2 + 56^2 + 34^2 + 21^2 = 1230278^2 + 65^2 + 43^2 + 12^2 = 12302原创 2021-04-06 16:14:47 · 119 阅读 · 0 评论 -
[蓝桥杯2016初赛]交换瓶子
题目描述有N个瓶子,编号 1 ~ N,放在架子上。比如有5个瓶子:2 1 3 5 4,要求每次拿起2个瓶子,交换它们的位置。经过若干次后,使得瓶子的序号为:1 2 3 4 5对于这么简单的情况,显然,至少需要交换2次就可以复位。如果瓶子更多呢?你可以通过编程来解决。输入输入存在多组测试数据,对于每组测试数据:第一行: 一个正整数N(N<10000), 表示瓶子的数目第二行:N个正整数,用空格分开,表示瓶子目前的排列情况。输出对于每组测试数据输出一行,包含一个正整数表示答案样例输原创 2021-04-02 18:46:46 · 390 阅读 · 0 评论 -
[蓝桥杯2016初赛]剪邮票
看这道题之前,我们先来学习一下什么是c++中的全排列函数,next_permutation,可以粘贴这段代码看一下,运行结果,会发现会出现指定序列的全排列#include<bits/stdc++.h>using namespace std;int main(){ int a[4]={2,1,3,4}; sort(a,a+4); do{ for(int i=0;i<4;i++){ printf("%d ",a[i]); } printf("\n"); }w原创 2021-03-29 16:28:40 · 88 阅读 · 0 评论 -
Product of Polynomials (25)
题目描述This time, you are supposed to find A*B where A and B are two polynomials.输入描述:Each input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial:K N1 aN1 N2 aN2 … NK aNK, where K is the nu原创 2021-02-23 19:30:56 · 100 阅读 · 0 评论 -
PAT A+B for Polynomials (25)
题目描述This time, you are supposed to find A+B where A and B are two polynomials.输入描述:Each input file contains one test case. Each case occupies 2 lines, and each line contains the information of a polynomial:K N1 aN1 N2 aN2 … NK aNK, where K is the nu原创 2021-02-23 16:20:11 · 110 阅读 · 0 评论 -
PAT Shortest Distance (20)
题目描述The task is really simple: given N exits on a highway which forms a simple cycle, you are supposed to tell the shortest distance between any pair of exits.输入描述:Each input file contains one test case. For each case, the first line contains an int原创 2021-02-18 21:36:00 · 83 阅读 · 0 评论 -
[蓝桥杯2015决赛]积分之迷
#include<stdio.h>int main(){ int a,b,c; for(a=1;a<500;a++){ for(b=1;b<500;b++){ for(c=1;c<500;c++){ if(3*a+7*b+c==315&&4*a+10*b+c==420){ printf("%d\n",a+b+c); return 0; } } } }}原创 2021-01-21 12:22:58 · 94 阅读 · 0 评论 -
[蓝桥杯2015初赛]移动距离
因为不可以斜着走,所以我们可以使用曼哈顿距离求最短距离#include<stdio.h>#include<math.h>int main(){ int w,m,n,xm,xn,ym,yn; while(scanf("%d %d %d",&w,&m,&n)!=EOF){ xm=m/w; xn=n/w; if(m%w!=0){ xm++; } if(n%w!=0){ xn++; } if(xm%2==0){..原创 2021-01-21 12:18:29 · 125 阅读 · 1 评论 -
[蓝桥杯2015初赛]加法变乘法
思路还是很简单的,别想复杂了#include<stdio.h>int main(){ int i,j,k; for(i=1;i<=50;i++){ for(j=i+2;j<=50;j++){ k=1225-i-i-1-j-j-1+i*(i+1)+j*(j+1); if(k==2015&&i!=10){ printf("%d\n",i); return 0; } } }} ...原创 2021-01-21 11:23:58 · 86 阅读 · 0 评论 -
[蓝桥杯2015初赛]牌型种数
刚做这道题的时候还是很蒙的,因为不知道如何在允许点数可以相同的情况下,去求不同的情况,但是可以确定的是一般出现排序问题都会使用到dfs,再在参考了网上其他博客的内容后终于知道了应该如何去做这道题了,不得不说这个思路真是绝绝子,学到了#include<bits/stdc++.h>int num=0;int dfs(int cnt,int k){ //cnt表示现如今手里所拿到的牌数 //k表示的是最多的迭代次数,即当每个点数的牌只取一次的时候,我们最多就可以取13次 int i;.原创 2021-01-17 11:06:40 · 176 阅读 · 2 评论 -
[蓝桥杯2015初赛]奇妙的数字
注意此处为0-9,不要想成1-10#include<stdio.h>#include<math.h>#include<string.h>int vis[11]={0};int n[11]={0};int bo(int a,int b,int t){ memset(n,0,sizeof(n)); memset(vis,0,sizeof(vis)); int k=0,i; while(a!=0){ n[k]=a%10; a=a/10; .原创 2021-01-17 10:29:43 · 82 阅读 · 0 评论 -
[蓝桥杯2015初赛]星系炸弹
#include<stdio.h>int a[2][12]={31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31,30,31};int sumy[2]={365,366}; int py,pm,pd;int year(int y){ if((y%4==0&&y%100!=0)||y%400==0) return 1; return 0;}int numm(int y,int m.原创 2021-01-16 11:32:02 · 116 阅读 · 0 评论 -
[蓝桥杯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。解答#include<stdio.h>#include<math.h>int main(){ int n,i,j,k,m=0; while(scanf("%d",&n)!=EOF){原创 2021-01-16 09:37:22 · 590 阅读 · 0 评论