模板
書盡
再见容易,再见难
展开
-
归并排序(函数模板)
模板:一个是将数组一分为二,一个无序的数组成为两个数组.另外一个操作就是,合二为一,将两个有序数组合并成为一个有序数组.双指针操作图片解释int a[N];int b[N];void megre_sort(int a[],int l,int r){ if(l>=r) return ; int mid=(l+r)/2; megre_sort(a,l,mid),megre_sort(a,mid+1,r);// 递归排序left,right int k=0原创 2021-06-29 18:51:03 · 235 阅读 · 0 评论 -
高精度模板之加减乘除(c++)
高精度加法:题目链接:高精度加法#include<bits/stdc++.h>using namespace std;vector<int> add(vector<int> &A,vector<int> &B){ vector<int> c; int t=0;//进位 for(int i=0;i<A.size()||i<B.size();i++){ if(i<A.si原创 2021-05-16 14:57:32 · 148 阅读 · 0 评论 -
奇数单增序列
#include<stdio.h>int main(){ int n; scanf("%d",&n); int a[n+10];//防止数组越界 int q=0;//数组下标从 0 开始 for(int i=0;i<n;i++){ int x; scanf("%d",&x); //保存奇数 if(x%2!=0){ a[q]=x; q++; } } //冒泡排序模板 int t; for(int i=0;i<.原创 2021-05-11 21:50:21 · 376 阅读 · 0 评论 -
D题,红与黑
蒜厂有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。输入格式第一行是两个整数 W 和 H,分别表示 x 方向和 y 方向瓷砖的数量。W 和 H 都不超过 20。在接下来的 H 行中,每行包括 W 个字符。每个字符表示一块瓷砖的颜色,规则如下1)’.’:黑色的瓷砖;2)’#’:白色的瓷砖;3)’@’:黑色的瓷砖,并且你站在这块瓷砖上。该字符在每个数据集合中唯一出现一次。输出格式原创 2021-05-08 09:47:34 · 110 阅读 · 1 评论 -
A [NOIP2008]笨小猴
笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!这种方法的具体描述如下:假设 maxn是单词中出现次数最多的字母的出现次数, minn是单词中出现次数最少的字母的出现次数,如果 maxn−minn 是一个质数,那么笨小猴就认为这是个 Lucky Word,这样的单词很可能就是正确的答案。输入格式只有一行,是一个单词,其中只可能出现小写字母,并且长度小于 100100 。输出格式共两行,第一行是一个字符串,假设输入原创 2021-05-08 09:18:01 · 64 阅读 · 0 评论 -
前缀和(模板)
一维前缀和题目链接https://www.luogu.com.cn/problem/U53525#include<bits/stdc++.h>using namespace std;const int N=1e5+10;int a[N];int main(){ int n; cin>>n; cin>>a[0]; for(int i=1;i<n;i++){ int x; cin>>x;//一维可用数组 可不用 具体意思一样原创 2021-04-17 09:31:45 · 103 阅读 · 0 评论 -
模板(素数,质因数,最大公约数,高精度加减,二分函数,前缀和总结)
素数模板一欧拉筛法 :打印 素数表 模板#include<bits/stdc++.h>using namespace std;const int N=1e8+10 ,M=1e9+10;int a[M];int t=0;bool b[M];void shushu(){ for(int i=2;i<N;i++){ if(b[i]==false){ a[t++]=i; for(int j=i+i;j<N;j+=i){ b[j]=true;原创 2021-04-16 20:55:00 · 133 阅读 · 1 评论