![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯
Miroslav_K
这个作者很懒,什么都没留下…
展开
-
玉米田 炮兵阵地 状态压缩DP
原题#include <cstring>#include <iostream>#include <algorithm>#include <vector>using namespace std;const int N = 14, M = 1 << 12, mod = 1e8;int n, m;int w[N];vector<int> state;vector<int> head[M];int f[N原创 2022-04-08 09:05:16 · 185 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 回文串
原题思路:先计算判断出这个数字有几位1位,2位:均为9个3位,4位:均为90个5位,6位:均为900个算出位数N后,K减去之前的总和,即-9-9-90-90-900……,得到新K把N的前半段单独看,即K表示的值大致等于前半段数字,注意要把K减去1,再把首位变成1.#include <iostream>#include <queue>#include <cmath>#include <stack>using namespace std;.原创 2022-04-07 21:25:34 · 474 阅读 · 0 评论 -
线性筛素数 板子
* 外循环为2-n,判断st[i]为0,即i是素数,用i和之前计算的素数更新,i*primes[j]<=n,当i%primes[j]==0,break;因为要用最小质因子更新#include <iostream>using namespace std;const int N=1000010;int primes[N];bool st[N];int n;int main (){ cin>>n; int cnt=0; for (int i=2;i<=n原创 2022-04-07 16:56:23 · 121 阅读 · 0 评论 -
dijkstra Floyd 迪杰斯特拉 弗洛伊德 板子
好久没写dijkstra了,找个板子,记录一下,方便用朴素dijkstra#include<iostream>#include<cstring>#include<algorithm>#include<queue>using namespace std;const int N=3000;int g[N][N],dist[N];int n,m,s,e;bool st[N];int dijkstra(int s,int e){ mem原创 2022-04-07 00:05:18 · 234 阅读 · 0 评论 -
log函数,ceil,归纳法,换底公式
原题题意:假设n个砝码连续表示出0-k,选第n+1个砝码,重为2k+1,则k+1=2k+1-(k)k+2=2k+1-(k-1)2k+1=2k+1-(0)2k+2=2k+1+13k+1=2k+1+(k)ans[i+1] = 3*ans[i]+1ans[i+1]+1/2=3(ans[i]+1/2)ans[n]=3^(n-1) * (ans[1]+1/2)(ans[1]+1/2)=3/2所以 ans[n]=3^(n-1) * 3/2ans[n]>=input3^(n-原创 2022-04-06 10:48:28 · 644 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 幂幂 费马小定理
费马小定理如果p是一个质数,而整数a不是p的倍数,则有a^(p-1)≡1(mod p)。原题#include <stdio.h>#include <vector>#include <bits/stdc++.h>//#include <unordered_map>using namespace std;typedef long long ll;int n;ll powmod(ll a,ll b ,ll p){ if (b==0){原创 2022-04-05 20:24:23 · 303 阅读 · 0 评论 -
getline使用
getline可以读入整行,以回车作为结尾,故如果输入形式是一个整数n,之后n行含有空格的串,要先进行getline(cin,s);读取完整数n后的空格。头文件是sstream,string#include <bits/stdc++.h>using namespace std;typedef long long ll;string s;map<string,int>m;int main(){ getline(cin,s); string str; strin原创 2022-04-05 14:14:51 · 942 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 新型斐波那契数列
原题分析:n过大,直接求会超时,所以观察出规律,用快速幂求解。易错点注意初始化,结构体中的数组没有初始化以及函数忘记写返回值,devc不报错,经常忘记#include <bits/stdc++.h>using namespace std;typedef long long ll;ll n; ll m;typedef struct matrix{ ll mat[4][4];}matrix;matrix a;matrix init(matrix t){ for原创 2022-04-05 11:03:56 · 862 阅读 · 0 评论 -
(int)pow(10,2)=99问题处理
在devcpp上运行,发现(int)pow(10,2)=99问题在于pow函数是double类型,采用数值逼近的方法得到一个值为99.99999,int转换后截断了。所以,解决方法是加一个0.1即可:(int)( pow(10,2) + 0.5 )=100原创 2022-04-05 00:12:15 · 1225 阅读 · 0 评论 -
蓝桥杯 注意点
1、long long2、最大值最小值问题涉及多,最大值初始化-2e9,最小值初始化+2e9原创 2022-04-04 23:27:19 · 127 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 搬运冰块
原题分析利用 融化速度/搬运时间 比值进行排序,将比值高的先搬运#include <bits/stdc++.h>using namespace std;typedef struct ice{ int t,d;}ice;typedef long long ll;ice a[100010];bool cmp(ice x,ice y){ return (double)x.d/(double)x.t>(double)y.d/(double)y.t;}int main原创 2022-04-03 19:42:19 · 723 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 Cat And Mouse
原题分析题目简单,但是其中下标注意不要写错,用devcpp不习惯,整体替换时多替换了,导致后面出现问题,花了一会儿,送分题不能浪费太多时间。#include <stdio.h>#include <vector>#include <bits/stdc++.h>using namespace std;char c[110][110];typedef struct point{ int x,y;}point;point s,e;char cr[110原创 2022-04-03 17:21:26 · 466 阅读 · 0 评论 -
蓝桥杯 试题 算法提高 最小字符串
原题给定一些字符串(只包含小写字母),要求将他们串起来构成一个字典序最小的字符串。思路:不能简单地对所有字符串进行排序,还要考虑之间的相互关系。#include <bits/stdc++.h>using namespace std;string c[110];bool cmp(string a,string b){ string x,y; x=a+b,y=b+a; if (x<y)return true; else return false;}int main(原创 2022-04-03 16:03:52 · 475 阅读 · 0 评论