自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

蜡笔小新冲鸭!!!

萌新一枚,欢迎讨论和指正错误!!!

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

原创 Mathematical Practice

#include<bits/stdc++.h>using namespace std;#define ll long longconst ll mod=998244353; ll n,m;ll pow(ll a,ll b){ if(b==0) return 1; if(b%2==1) return a*pow(a,b-1)%mod; else { ll mul=pow(a,b/2); return mul*mul%m..

2020-11-19 23:12:36

原创 错题总结

区间减成一题目描述:存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一。问最少多少次操作,可以让所有数都变成1。思路:赛马题目:一天小明与他同学准备赛马,他们每人有n匹马,每匹马有一个固定的战力值,战力值高的马会战胜战力值低的马并赢得比赛。每匹马只能出场比赛一次。小明偷看到了他对手每匹马的出场顺序,小明在更改自己马出场顺序后最多能赢多少场比赛。思路:就跟田忌赛马一样,你无非是找到比对手马略强一点的马来跟他的马比,这样才能应最多场。把你和对手的马匹各自排序,从小到大,每次找比对手现

2020-11-19 23:10:44 58

原创 Travel Expense(floyd+二分)

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=200;int dis[maxn][maxn];const int inf=0x3f3f3f;int n,m;ll budget;ll len;//void init()//{// for(int i=1; i<=n; i++)// {// for(int j=1; j<=n;

2020-11-19 21:34:24 1

原创 Simple Math Problem

样例感觉都给错了…#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ ll n,x,y; ios::sync_with_stdio(false); cin>>n>>x>>y; ll ans=0; if(x+y<=n-1) { ll p=x+y; ll pp=((p+.

2020-11-19 20:12:12 3

原创 1399: [蓝桥杯2018决赛]迷宫与陷阱

细品,你细品!!!#include<bits/stdc++.h>using namespace std;#define ll long longint vis[1005][1005][15];///vis[x][y][k]:走到 (x, y),还有 k 步无敌状态。char mp[1005][1005];int dir[4][2]={1,0,-1,0,0,1,0,-1};int n,k;struct node{ int x,y,k,step;};int bfs.

2020-11-04 23:28:38 14

原创 1397: [蓝桥杯2018决赛]最大乘积(全排列)(思维)

#include<bits/stdc++.h>using namespace std;#define ll long longdouble eps=1e-8;int a[]={1,2,3,4,5,6,7,8,9};ll ans=0;set<int>s;void f(int x){ s.clear(); ll num1=0; ll num2=0; for(int i=0;i<x;i++) { num1=nu.

2020-11-04 20:05:39 4

原创 1393: [蓝桥杯2018决赛]调手表

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e5+20;int vis[maxn];int dis[maxn];queue<int>q;int n,k;int ans=0;///bfs算法需要将所有的点先后入列,///vis数组的作用就是确保所有的点都入过列,且不会重复入列void bfs(){ vis[0]=1; q.pus.

2020-11-04 18:47:01 31 2

原创 1392: [蓝桥杯2018决赛]激光样式

#include<bits/stdc++.h>using namespace std;#define ll long longint vis[100];int ans;void dfs(int x){ if(x==31) { ans++; return ; } dfs(x+1); ///x灭,x+1亮 if(vis[x-1]==0) { vis[x]=1; ///x亮 .

2020-11-04 13:00:58 7

原创 1391: [蓝桥杯2018决赛]换零钞 (水题)(暴力)

#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ int ans=0x3f3f3f; for(int a=1; a<=100; a++) { for(int b=1; b<=100; b++) { for(int c=1; c<=100; c++) { .

2020-11-04 12:51:46 29

原创 1357: [蓝桥杯2017决赛]小计算器

一道模拟题,各种问题都来了。没有问题后,提交后发现超时。。。网上参考的一段代码,思路很清晰!!!#include<bits/stdc++.h>using namespace std;#define ll long longll R_to_Ten(string s,int jinzhi) ///R进制转十进制{ ll cnt=1; reverse(s.begin(),s.end()); ll ans=0; for(int i=0;i<s.siz.

2020-11-04 10:53:14 13

原创 1388: [蓝桥杯2018决赛]约瑟夫环 (思维)

直接套公式即可#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e6+5;int f[maxn];int main(){ int n,k; scanf("%d%d",&n,&k); f[1]=0; for(int i=2; i<=n; i++) { f[i]=(f[i-1]+k)%i; .

2020-11-03 23:35:13 17

原创 1387: [蓝桥杯2018决赛]阅兵方阵

这道题说白了就是把一个数分成两个平方数,问这一组平方数有多少种,注意:例如:1、9 = 1 + 82、9 = 8 + 1∵ 上述两种情况其实是同一个队形∴ 要求变换的队形数量要 * 2#include<bits/stdc++.h>using namespace std;#define ll long longint q[105];int w[105];int main(){ for(int i=1; ;i++) { int cnt=.

2020-11-03 23:21:56 18

原创 1386: [蓝桥杯2018决赛]三角形面积

#include<bits/stdc++.h>using namespace std;#define ll long longdouble len(double x1,double y1,double x2,double y2){ double l=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); return l;}int main(){ double a=len(2.3,2.5,6.4,3.1); double b.

2020-11-03 22:52:12 5

原创 1358: [蓝桥杯2017决赛]数位和 (水题)

#include<bits/stdc++.h>using namespace std;#define ll long longint f(int x){ int sum=0; while(x) { sum+=x%10; x/=10; } return sum;}int main(){ int sum=0; for(int i=1;i<=1000;i++) { su.

2020-11-03 22:33:22 6

原创 1356: [蓝桥杯2017决赛]图书排列(全排列) (水题)

#include<bits/stdc++.h>using namespace std;#define ll long longint a[]={1,2,3,4,5,6,7,8,9,10};int main(){ int ans=0; do { if(abs(a[0]-a[1])==1) continue; if(abs(a[1]-a[2])==1) continue; if(abs(a[2]-a[3])==1) .

2020-11-03 19:53:11 5

原创 1355: [蓝桥杯2017决赛]合根植物 (并查集)

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e6+10;int fu[maxn];int vis[maxn];int xunzu(int x){ if(x==fu[x]) { return x; } return fu[x]=xunzu((fu[x]));}int main(){ int m,n; .

2020-11-03 19:48:17 5

原创 1354: [蓝桥杯2017决赛]分考场 (dfs)

#include<bits/stdc++.h>using namespace std;#define ll long longint room[105][105];///保存每个房间的学生的编号int rela[105][105];///表示两个人是否有关系int cnt=200;///最大人数为200int n;void dfs(int num,int x)///x表示的是当前操作的学生编号为x,num表示的是当前的房间数量{ if(num>=cnt)///最优.

2020-11-03 19:31:04 21

原创 1353: [蓝桥杯2017决赛]小数第n位 (思维)

暴力40分,要注意n的取值范围!!!!#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ ll a,b,n; while(cin>>a>>b>>n) { ios::sync_with_stdio(false); int num1=0,num2=0,num3=0; int cnt=.

2020-11-02 21:15:03 11

原创 1352: [蓝桥杯2017决赛]数字划分

dfs还是一个硬伤啊。。。#include<bits/stdc++.h>using namespace std;#define ll long longint a[]= {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};int vis[30];int cnt=0;int ans[50];int sum1,sum2,sum3;void dfs(int k){ if(k==8&&a[0]==1) { .

2020-11-02 20:44:09 9

原创 1351: [蓝桥杯2017决赛]哥德巴赫分解(思维)

题意就是:每个偶数分解为两个素数,只取最小的那个,再在取出的数中找出最大的。(有点绕)#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e4+10;int sushu[maxn];int main(){ memset(sushu,0,sizeof(sushu)); sushu[2]=1; for(int i=3; i<=maxn; i++) .

2020-11-02 20:04:41 12

原创 1349: [蓝桥杯2017决赛]对局匹配 (dp)

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e5+5;int q[maxn];;///q[i]=k 代表积分为i的用户有k个人int n,k;ll dp[maxn];ll max(ll a,ll b){ if(a>b) return a; else return b;}ll f(int beg,int ed){ me...

2020-11-02 19:38:02 11

原创 1348: [蓝桥杯2017决赛]发现环 (dfs+并查集)

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e5+10;int be,e; ///起点和终点int n;int ans[maxn];///结果数组,用于保存所有在环上的点int fa[maxn];///并查集数组int vis[maxn]; ///用于做标记,判断当前结点是否已经访问过vector<int>v[maxn];///关系图,这里使用动态数组.

2020-11-02 09:13:04 10

原创 1347: [蓝桥杯2017决赛]磁砖样式

思路:当摆满所有格子的时候就检查是否出现某个2*2的小格子是同一种颜色,以及这种摆放方式是否已经计算过。我是采用二进制来表示每一种能铺满的情况,黄色用0表示,橙色用1表示,再用map来记录和判断是否重复计算。看代码,有很详细的注释!!!#include<bits/stdc++.h>using namespace std;#define ll long longmap<int,int>mp;int graph[4][11]; ///int ans=0;bool ch.

2020-11-01 20:10:09 7

原创 1346: [蓝桥杯2017决赛]36进制 (进制)

脑残了,最基本的进制转换想复杂了,毕竟是个国赛。。。#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ ll sum; int a='Y'-'A'+10; int b=('N'-'A'+10)*36; int c=10*36*36; int d=('M'-'A'+10)*36*36*36; printf("%d\n",a+b+c+d);

2020-10-31 23:07:22 5

原创 有趣的图案

/* ^....0 ^ .1 ^1^ .. 01 1.^ 1.0 ^ 1 ^ ^0.1 1 ^ ^..^

2020-10-31 22:15:41 5

原创 1341: [蓝桥杯2017决赛]平方十位数

#include<bits/stdc++.h>using namespace std;#define ll long longint a[]= {0,1,2,3,4,5,6,7,8};ll ans;ll maxx(ll a,ll b) { if(a>b) return a; else return b; }void solve(){ ll num; num=9000000000+a[0]*100000000+a[1]*10000.

2020-10-31 21:50:50 10

原创 1316: [蓝桥杯2016决赛]七星填数 (全排列)

需要注意的坑点:不要直接1~14全排列,只需要排列剩下的11个数即可#include<bits/stdc++.h>using namespace std;#define ll long longint a[]={1,2,3,4,5,7,8,9,10,12,13};int ans;bool check(){ int num1=a[0]+a[1]+a[2]+a[3]; int num2=6+a[1]+a[4]+14; if(num1!=num2) retur

2020-10-31 20:01:10 6

原创 1315: [蓝桥杯2016决赛]愤怒小鸟(模拟)

做完这道题,我开始有些后悔刚刚交的300块了。。。真的是菜,估计连国三都没了。。。。。。#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ int v1=10; int v2=10; int v=50; int k=0; int ans=0; double t,dis=1000; while(dis>1) {

2020-10-31 19:30:54 8

原创 1314: [蓝桥杯2016决赛]阶乘位数 (数论)

#include<bits/stdc++.h>using namespace std;#define ll long longint q[105];int w[105];int main(){ double ans=1; for(int i=1;i<=9999;i++) { ans=ans+log(i*1.0)/log(2.0); } printf("%d\n",(int)ans);}

2020-10-31 18:43:45 14

原创 1313: [蓝桥杯2016决赛]赢球票 (模拟)

一道没什么毛病的模拟题,但是脑残的我居然看别人写的代码,看懂了感觉,但是最后自己打的时候觉得不怎么对,有一条语句看了半天也没看懂,搞我心态。。。建议大家没看懂的话就别写博客了,真的害人!!!#include<bits/stdc++.h>using namespace std;#define ll long longint q[105];int w[105];int main(){ int n; while(~scanf("%d",&n)) {

2020-10-31 18:24:39 17

原创 1312: [蓝桥杯2016决赛]反幻方(水题)

#include<bits/stdc++.h>using namespace std;#define ll long longint a[]= {1,2,3,4,5,6,7,8,9};int ans;set<int>s;bool check(){ s.clear(); int num1=a[0]+a[1]+a[2];///hang int num2=a[3]+a[4]+a[5]; int num3=a[6]+a[7]+a[8]; .

2020-10-31 15:17:35 11

原创 [蓝桥杯2016决赛]凑平方数

#include<bits/stdc++.h>#define ll long long#include<set>using namespace std;int a[10]={0,1,2,3,4,5,6,7,8,9};ll q[10];set<string>s;void dfs(int step,int num)///step代表搜索的深度,num代表这一组中有几个数{ if(step==10)///如果已经用完所有的10个数 { .

2020-10-30 12:14:39 8

原创 1303: [蓝桥杯2016决赛]路径之谜(dfs+全排列)

#include<bits/stdc++.h>using namespace std;#define ll long longint xi[25];///西边的靶子上的箭数int bei[25];///北边的靶子上的箭数int vis[25][25];///标记是否走过int n;int ans[405];///存储路径int dir[4][2]= {1,0,-1,0,0,1,0,-1};int flag=0;int cnt=0;bool check() ///检查.

2020-10-30 08:52:19 20

原创 [蓝桥杯2016决赛]随意组合 (全排列+思维)

这种全排列的方式第一次见。。。被难住了。思路:由图易知当第一组为(2,1)时,共有6种情况,而第一组共有4种可能,所以总共有6x4=24种可能。而且易知:一组数据不动,另一组数据全排列即可。#include<bits/stdc++.h>using namespace std;#define ll long longint a[]= {2,3,5,8};int b[]= {1,4,6,7};int num[1000000];int main(){ int ans

2020-10-28 11:26:44 23

原创 [蓝桥杯2015决赛]奇怪的数列 (模拟水题)

#include<bits/stdc++.h>using namespace std;#define ll long longint main(){ ios::sync_with_stdio(false); string s; int n; cin>>s>>n; int num[10]; while(n--) { memset(num,0,sizeof(num));// fo.

2020-10-28 10:44:08 25

原创 [蓝桥杯2015决赛]生成回文数 (模拟)

需要注意的点:1.x不一定一直都是三位数。2.x的范围可能会超ll,超ll的那个数就是答案。#include<bits/stdc++.h>using namespace std;#define ll long longint a[100];void i2s(ll i,string &s) ///将int 类型转换成string 类型{ stringstream ss; ss<<i; ss>>s;}bool is_h.

2020-10-28 10:27:47 13

原创 [蓝桥杯2015决赛]机器人繁殖 (数学)

公式推导出来后,Sn=(2^n-1)*(a1-1)+n+i;其中,a1为一年后的数值#include<bits/stdc++.h>using namespace std;#define ll long longdouble eps=1e-6;double num(int x){ double ans=1; for(int i=1; i<=x; i++) { ans=ans*2; } return ans;}in.

2020-10-28 09:01:27 31

原创 [蓝桥杯2015决赛]五星填数 (水)

#include<bits/stdc++.h>using namespace std;#define ll long longint a[]= {1,2,3,4,5,6,8,9,10,12};int ans;int vis[20];bool check(){ if(a[0]+a[2]+a[5]+a[8]!=24) return 0; if(a[0]+a[3]+a[6]+a[9]!=24) return 0; if(a[1]+a[2]+a[3]+a[4].

2020-10-27 23:36:58 6

原创 [蓝桥杯2015决赛]分机号 (巨水)

呵呵,这破题给我整醉了。。。我一直都理解的是“3位分机号码”是“三个三位数的号码”。原来真的只是三个数字做做两两比较。。。这题已经不能作为编程题了,为什么不去作为语文的阅读?这给的样例也有一定的迷惑性。。。#include<bits/stdc++.h>using namespace std;#define ll long longint a[]={0,1,2,3,4,5,6,7,8,9};int main(){ int ans=0; for(int a=0;a

2020-10-27 23:24:28 8

原创 [蓝桥杯2015决赛]密文搜索 (思维)

这道题的关键是要看懂题意:“这些密码是被打乱后隐藏在先前那份资料中的”,“都是小写字母组成,长度都为8 ”,“要考虑密码的所有排列可能性”思路:把原字符串,每8个字母统计一下个数,存进一个数组当输入n组字符串时,统计每一个字符串中字母的个数,然后和存储的字符串进行比较,如果字母个数相同,计数器+1就行#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn=1e6+1e5;in.

2020-10-27 23:06:04 9

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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