ACM
ITKaven
ACMER
本科软件工程专业
硕士计算机技术专业
专注于WEB开发的烟酒僧
展开
-
2018年湖南省第十四届大学生计算机程序设计竞赛 CSU 2164: 2018
题目传送门 不会自己推,比赛现场找规律 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=2000+100;const LL mod=1e9+7;LL ans[maxn][maxn];int main(){ for(int i=1;i...原创 2018-09-09 15:47:20 · 5996 阅读 · 0 评论 -
2018年湖南省第十四届大学生计算机程序设计竞赛 CSU 2170: 千万别用树套树
题目传送门 比赛时想的解法,整体二分+树状数组 具体看代码吧代码:#include&lt;bits/stdc++.h&gt;using namespace std;const int maxn=100000+100;struct Node{ int l,r; int type,id;};int n,q;Node node[maxn],a[maxn],b...原创 2018-09-09 15:41:31 · 4668 阅读 · 2 评论 -
牛客OI赛制测试赛2 F :假的数学游戏
题目传送门 斯特林公式 代码:#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;const double PI=3.1415926;typedef long long LL;int main(){ LL x; scanf(&quot;%lld&quot;,&amp;amp;x); LL l=10,r=1LL&原创 2018-09-07 16:26:48 · 1680 阅读 · 0 评论 -
牛客OI赛制测试赛2 B :路径数量
题目传送门 k很小,就不写矩阵快速幂了 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;LL ans[50][50],rev[50][50],tmp[50][50];int main(){ int n,k; scanf("%d%d",&n,&k...原创 2018-09-07 15:39:43 · 1422 阅读 · 0 评论 -
牛客OI赛制测试赛2 E :括号序列
题目传送门 贪心 代码:#include<bits/stdc++.h>using namespace std;const int maxn=5000000+100;char ch[maxn];int ph[maxn];int main(){ int n; scanf("%d",&n); getchar(); int ...原创 2018-09-07 15:18:11 · 1706 阅读 · 0 评论 -
牛客OI赛制测试赛2 D :星光晚餐
题目传送门 看出规律,再二分即可 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;int main(){ LL n; scanf("%lld",&n); int l=0,r=1e9,node; while(l<r){ ...原创 2018-09-07 14:26:10 · 1650 阅读 · 0 评论 -
牛客OI赛制测试赛2 A :无序组数
题目传送门 去掉重复的就可以了 代码:#include<bits/stdc++.h>using namespace std;unordered_map<int,int>M;int main(){ int T; scanf("%d",&T); while(T--){ int A,B; sca...原创 2018-09-07 11:55:23 · 1556 阅读 · 0 评论 -
牛客OI赛制测试赛2 C :数列下标
题目传送门 单调队列 代码:#include<bits/stdc++.h>using namespace std;const int maxn=10000+100;struct Que{ int val,id; }que[maxn];int ans[maxn];int main(){ int top=0; int n; ...原创 2018-09-07 10:02:50 · 1661 阅读 · 0 评论 -
Wannafly挑战赛23 A :字符串(尺取法)
题目传送门 代码:#include<bits/stdc++.h>using namespace std;const int maxn=1000000+100;char ch[maxn];int cnt[30];bool check(){ for(int i=0;i<26;i++) if(!cnt[i]) return false; re...原创 2018-09-04 10:22:48 · 1729 阅读 · 0 评论 -
Codeforces 1029D:Concatenated Multiples
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=200000+10;map<int,int> M[11];int ans[maxn];short bit[maxn];int main(){ int n,k,t...原创 2018-08-31 16:08:33 · 1777 阅读 · 0 评论 -
计蒜客 组合运算式(简单DFS)
题目传送门 代码:#include<bits/stdc++.h>using namespace std;int n;int type[10];void DFS(int v,int s,int pre,int ty){ if(v==n){ if(s==0){ printf("1"); fo...原创 2018-08-31 10:44:45 · 1924 阅读 · 0 评论 -
计蒜客 祖宗十九代
题目传送门 简单LCA 代码:#include<bits/stdc++.h>using namespace std;const int maxn=10000+100;int dp[maxn][20],fa[maxn],du[maxn],in[maxn];struct Edge{ int to,next;}edge[maxn];int head[m...原创 2018-08-31 09:56:06 · 1777 阅读 · 0 评论 -
计蒜客 奇异家庭
题目传送门dp[i][j] – i 个节点不超过 j 层的方案数 有dp[i][j]+=dp[t][j-1]*dp[i-t-1][j-1] 根节点左子树dp[t][j-1] , 右子树dp[i-t-1][j-1] 代码:#include<bits/stdc++.h>using namespace std;const int maxn=210;const int m...原创 2018-08-30 17:00:59 · 1723 阅读 · 0 评论 -
牛客OI赛制测试赛 F:子序列
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=1000+100;const LL mod=1e9+7;const LL M=mod-1;int ans[maxn];LL fac[maxn][maxn];LL mypow(LL ...原创 2018-08-30 13:02:12 · 1706 阅读 · 0 评论 -
牛客OI赛制测试赛 E:旅行青蛙
题目传送门 最长不下降子序列 代码:#include<bits/stdc++.h>using namespace std;const int maxn=30000+100;const int INF=0x3f3f3f3f;int main(){ int n; scanf("%d",&n); vector<int>G;...原创 2018-08-30 10:34:22 · 1751 阅读 · 0 评论 -
牛客OI赛制测试赛 D:小叶的巡查
题目传送门 求树的直径即可 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;typedef pair<LL,int> P;const int maxn=30000+100;const LL INF=1e18;LL dis[maxn];bool vis[maxn];...原创 2018-08-30 10:21:21 · 1753 阅读 · 0 评论 -
牛客OI赛制测试赛 C:序列
题目传送门 数据随机,随便乱搞代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=100000+100;LL ans[maxn],sum[maxn];int main(){ int n,q; scanf("%d%d",&n,...原创 2018-08-30 09:26:15 · 1599 阅读 · 0 评论 -
牛客OI赛制测试赛 A:斐波那契
题目传送门 可以得到 f[n-1]*f[n+1]-f[n]^2=f[n-3]*f[n-1]-f[n-2]^2 所以当 n 为偶数时 f[n-1]*f[n+1]-f[n]^2=f[1]*f[3]-f[2]^2=1 所以当 n 为奇数时 f[n-1]*f[n+1]-f[n]^2=f[2]*f[4]-f[3]^2=-1代码:#include<bits/stdc++.h>usi...原创 2018-08-30 09:04:05 · 3931 阅读 · 0 评论 -
计蒜客 最长不重复子串
题目传送门 代码:#include<bits/stdc++.h>using namespace std;int main(){ unordered_map<char,int>M; char ch[110]; while(scanf("%s",ch)==1){ int len=strlen(ch); ...原创 2018-08-29 22:16:33 · 1689 阅读 · 0 评论 -
计蒜客 第一个没有出现的正数
题目传送门 代码:#include<bits/stdc++.h>using namespace std;int main(){ unordered_map<int,int>M; int n; scanf("%d",&n); for(int i=1,val;i<=n;i++) scanf("%d",&va...原创 2018-08-29 22:05:52 · 1904 阅读 · 0 评论 -
计蒜客 蒜头君的兔子(神奇的杜教板子)
题目传送门 下面的代码别问我为什么这么写,我也不会,只是听说能解决一切线性递推式 只要把前面几项先处理出来就可以了,一般到50应该就没问题了 代码:#include&lt;bits/stdc++.h&gt;using namespace std;#define rep(i,a,n) for (int i=a;i&lt;n;i++)#define pb push_back#defi...原创 2018-08-29 11:19:47 · 1641 阅读 · 0 评论 -
计蒜客 简单的快速幂
题目传送门#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=1000000+100;const int prinum=100000+100;int prime[prinum],tot;bool isprime[prinum];char B[maxn];...原创 2018-08-29 10:31:19 · 3919 阅读 · 3 评论 -
牛客练习赛25 C :再编号
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=100000+100;const int mod=1e9+7;LL tt[maxn],sum;int ans[maxn];int n,m;int main(){ scanf(...原创 2018-08-28 16:39:33 · 1654 阅读 · 0 评论 -
51Nod 1433 0和5
题目传送门 可以被90整除,如果存在这个数,这个数的尾数位肯定是0,那么除了尾数位前面的所有数位和是90/10=9的倍数,如果这个数存在数位5,就必须有9的倍数个5,因为这两个数互质代码:#include<bits/stdc++.h>using namespace std;int main(){ int n; scanf("%d",&n);...原创 2018-08-21 22:37:39 · 970 阅读 · 0 评论 -
51Nod 1486 大大走格子
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=2000+100;const int maxm=100000+100;const int mod=1e9+7;LL fac[maxm*2],inv[maxm];struct Node{...原创 2018-08-22 10:00:59 · 971 阅读 · 0 评论 -
51Nod 1081 子段求和 (前缀和)
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=50000+100;LL ans[maxn];int main(){ int n; scanf("%d",&n); for(int i=1;i<=...原创 2018-08-22 10:15:36 · 920 阅读 · 0 评论 -
51Nod 1266 蚂蚁
题目传送门 代码:#include<bits/stdc++.h>using namespace std;#define max(a,b) (a>b?a:b)#define min(a,b) (a<b?a:b)int main(){ int n,L; scanf("%d%d",&n,&L); int Max=0,...原创 2018-08-22 10:26:18 · 844 阅读 · 0 评论 -
51Nod 1082 与7无关的数
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=1000000+100;LL ans[maxn];bool check(int num){ if(num%7==0) return true; while(num){...原创 2018-08-22 10:27:12 · 981 阅读 · 0 评论 -
51Nod 1046 A^B Mod C(快速幂)
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;LL mypow(LL a,LL b,LL c){ LL sum=1; while(b){ if(b&1) sum=sum*a%c; a=a*a%c; ...原创 2018-08-22 10:44:58 · 858 阅读 · 0 评论 -
51Nod 1040 最大公约数之和
题目传送门 代码:#include<bits/stdc++.h>using namespace std;#define V(a) vector<a>#define pb push_back#define all(a) a.begin(),a.end()#define Map1(a,b) map<a,b>#define Map2(a,b) ...原创 2018-08-22 11:00:02 · 866 阅读 · 0 评论 -
51Nod 1711 平均数
题目传送门 代码:#include<bits/stdc++.h>using namespace std;#define MEM(a,b,start,end) for(int ii=start;ii<=end;ii++) a[ii]=b#define low(x) (x&(-x))typedef long long LL;typedef double ...原创 2018-08-22 11:51:17 · 997 阅读 · 0 评论 -
51Nod 1103 N的倍数
题目传送门 代码:#include&lt;bits/stdc++.h&gt;using namespace std;#define Map1(a,b) map&lt;a,b&gt;#define Map2(a,b) unordered_map&lt;a,b&gt;const int maxn=50000+100;int ans[maxn];Map2(int,int) M;...原创 2018-08-22 14:44:56 · 903 阅读 · 0 评论 -
51Nod 1406 与查询
题目传送门 代码:#include<stdio.h>using namespace std;const int maxn=1000000+100;inline int read(){ int x=0; char ch=getchar(); for(;ch>'9' || ch<'0';ch=getchar()); for(...原创 2018-08-22 17:52:12 · 1119 阅读 · 0 评论 -
HDU 6435 Problem J. CSGO
题目传送门 代码:#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;typedef long long LL;const int maxn=100000+100;struct Node{ int s; int x[5];}a[maxn],b[maxn];LL ma[35],mb[35];int mai...原创 2018-08-22 23:45:46 · 1029 阅读 · 0 评论 -
HDU 5922 Minimum’s Revenge
题目传送门 代码:#include&amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;gt;using namespace std;typedef long long LL;int main(){ int T,C=0; scanf(&amp;amp;quot;%d&amp;amp;quot;,&amp;amp;amp;amp;T); while(T--原创 2018-08-23 00:02:57 · 912 阅读 · 0 评论 -
HDU 6433 Problem H. Pow
题目传送门 java:import java.math.BigInteger;import java.util.*;public class Main { public static void main(String args[]){ Scanner cin = new Scanner(System.in); int T = cin.n...原创 2018-08-23 00:33:14 · 1258 阅读 · 0 评论 -
HDU 6434 Problem I. Count
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;const int maxn=2e7+100;int prime[maxn],e[maxn],tot;bool isprime[maxn];LL ans[maxn];void init(){ for(i...原创 2018-08-23 10:17:13 · 1146 阅读 · 0 评论 -
HDU 5969 最大的位或
题目传送门 代码:#include<bits/stdc++.h>using namespace std;typedef long long LL;int main(){ int T; scanf("%d",&T); while(T--){ LL l,r; scanf("%lld%lld",&...原创 2018-08-23 11:13:27 · 879 阅读 · 0 评论 -
HDU 6025 Coprime Sequence
题目传送门 代码:#include<bits/stdc++.h>using namespace std;const int maxn=100000+100;int ans[maxn],pre[maxn],nex[maxn];int gcd(int a,int b){ return !b?a:gcd(b,a%b);}int main(){ ...原创 2018-08-23 11:55:51 · 905 阅读 · 0 评论 -
HDU 5927 Auxiliary Set
题目传送门 代码:#include<bits/stdc++.h>using namespace std;#define MEM(a,b,start,end) for(int ii=start;ii<=end;ii++) a[ii]=b #define AddEdge1(u,v) edge[tot].to=v,edge[tot].next=head[u],head...原创 2018-08-23 15:16:19 · 901 阅读 · 0 评论