- 博客(509)
- 资源 (1)
- 收藏
- 关注
原创 Round #214 (Div. 2)B. Dima and To-do List
1、又是一个模拟题,我还能说什么呢。。。就是题目有点绕,yingwe
2014-05-11 23:03:16
377
原创 Round #169 (Div. 2)C、Checkposts
1、#include#include#include#includeusing namespace std;const int maxn=100010;const int MOD=1000000007;const int INF=2147483647;vector G[maxn],G2[maxn];vector S;int vis[maxn],sccno
2014-05-03 11:56:52
406
原创 Round #169 (Div. 2)B、Prison Transfer
1、这道题也是个Ad-hoc。。。#include#includeusing namespace std;int a[200010];const int INF=2147483647;int main(){ int n,t,c; scanf("%d%d%d",&n,&t,&c); for(int i=1;i scanf("%d",&a[i]);
2014-05-03 11:52:59
367
原创 Round #169 (Div. 2)A、Police Recruits
#includeusing namespace std;int a[100010];int main(){ int n,num=0,ans=0,temp; scanf("%d",&n); for(int i=0;in;i++){ scanf("%d",&temp); if(temp!=-1) num+=temp; else{ if(nu
2014-05-03 11:46:07
298
原创 2013 ACM/ICPC Asia Regional Online —— Warmup2 K、Kia's Calculation
#include#include#includeusing namespace std;char A[1000010],B[1000010];int num1[10],num2[10];int main(){ int T; scanf("%d",&T); for(int kase=1;kase scanf("%s%s",A,B);
2014-05-01 22:27:43
468
原创 2013 ACM/ICPC Asia Regional Online —— Warmup2 E、Naive and Silly Muggles
#include#include#includeusing namespace std;const double PI=acos(-1.0);const double eps=1e-10;struct Point{ double x,y; Point(double x=0,double y=0):x(x),y(y){}};typedef Point Vect
2014-05-01 22:22:02
337
原创 2013 ACM/ICPC Asia Regional Online —— Warmup2 A、Computer Graphics Problem
1、#includeusing namespace std;int main(){ int T,x; scanf("%d",&T); for(int i=1;i scanf("%d",&x); x/=10; x=10-x; printf("Case #%d:\n",i); printf("*------------*\n"); for(i
2014-05-01 22:10:40
273
原创 Round #169 (Div. 2)B. Little Girl and Game
1、统计每个字母出现的次数是奇数还是偶数,假如奇数个数为k,则k为0或1时都是zhiji
2014-05-01 02:13:38
663
原创 URAL 1057 Amount of Degrees
#include#includeusing namespace std;int f[35][35],temp[35];void init(){ f[0][0]=1; for(int i=1;i f[i][0]=f[i-1][0]; for(int j=1;j }}int calc(int x,int k){ int tot=0,ans=0;
2014-04-27 00:46:48
305
原创 Round #242 (Div. 2) C. Magic Formulas
1、用到了数论#includeusing namespace std;int x[1000010];int main(){ int n,ans=0,temp; scanf("%d",&n); for(int i=1;i scanf("%d",&temp); ans^=temp; } x[1]=1;
2014-04-26 00:18:31
299
原创 Round #242 (Div. 2) B. Megacity
1、就是排个序再加个循环。。。懒得说了。。。#include#include#includeusing namespace std;struct city{ double r; int p; bool operator return r }}a[1010];int main(){ int n,s,cn
2014-04-26 00:16:01
383
原创 Round #216 (Div. 2) C. Valera and Elections
for(int i=info[num];i;i=next[i]){ if(to[i]!=fa && !dfs(to[i],num,val[i])) flag=false;} if(flag&&w==2){ans[++ans[0]]=num;flag=false;} return flag;}int main(){ scanf(
2014-04-25 17:29:00
437
原创 Round #216 (Div. 2) B. Valera and Contest
1#include#includeusing namespace std;int a[1010];int main(){ int n,k,l,r,sall,sk; scanf("%d%d%d%d%d%d",&n,&k,&l,&r,&sall,&sk); int temp1=sk/k; memset(a,0,sizeof(a)); sall-=sk;
2014-04-25 11:49:50
479
原创 Coder-Strike 2014: Qualification Round A
#include#include#include#includeusing namespace std;int main(){ string s; cin>>s; int a=0,b=0,c=0,d=0; for(int i=0;i if(isprint(s[i])) a++; if(isupper(s[i])) b++;
2014-04-16 23:04:20
270
原创 Round #234 (Div. 2) A 、 Inna and Choose Options
1#include#include#includeusing namespace std;int ways[6][2];string s;bool judge(int x,int y){ for(int i=0;i bool flag=true; for(int j=0;j if(s[j*y+i]!='X'){ flag=
2014-04-16 22:57:50
306
原创 SCU 2014 Training Weekly 3 E、encipher
1、很简单的密码学问题,见代码。 #include#include#includeusing namespace std;char s1[10010],s2[10010],s3[10010];int main(){ int n,len; while(scanf("%d",&n)==1){ memset(s1,'\0',sizeof(s1));
2014-04-13 23:42:32
315
原创 SCU 2014 Training Weekly 3 B、mosquito
1、可千万别被题目吓住。。。很好写。 #includeusing namespace std;int M,P,L,E,R,S,N;int main(){ while(scanf("%d%d%d%d%d%d%d",&M,&P,&L,&E,&R,&S,&N)==7){ while(N--){ int temp=M; M=P/S;
2014-04-13 23:40:14
328
原创 SCU 2014 Training Weekly 3 A、grasshop
1、明显用bfs,第一次裸敲bfs,还是有诸多问题。。。 #include#include#include#includeusing namespace std;struct node{ int x,y,dist; node(int _x,int _y,int _dist):x(_x),y(_y),dist(_dist){}};queue q;
2014-04-13 23:38:26
317
原创 【清澄OJ】字符统计
1、就是想试试#include,结果编译器无法识别。。。#include#include#includeusing namespace std;int main(){ string s; int num[30]; cin>>s; memset(num,0,sizeof(num)); for(int i=0;i num[s[i]-'a']++; fo
2014-04-13 20:32:34
353
原创 2014 TCO Algorithm Round 1A EllysSortingTrimmer
1、首先,第一个字母肯定是在最终解里的,然后对后面的字母排序,#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #i
2014-04-13 10:17:09
390
原创 Google Code Jam 2014 Qualification Round B
1、用贪心f#include#include#includeusing namespace std;const double eps=1e-9;double dcmp(double x){ if(fabs(x)if(x>0) return 1;return -1;}int main(){ //freopen("B--large.in","r"
2014-04-13 10:11:49
354
原创 Google Code Jam 2014 Qualification Round A
1、一个模拟题。。。看代码吧。。。#includeusing namespace std;int a[10][10],b[20][2];int main(){freopen("A--small-attempt1.in","r",stdin);freopen("A--small-attempt1.out","w",stdout); int T,fn,sn;sca
2014-04-13 10:10:49
464
原创 POJ 1469 COURSES
1、求二分图最大匹配,看是否等于p。用匈牙利算法(#include#includeusing namespace std;int g[110][310],from[310],vis[310];bool match(int x){ for(int i=1;i if(!vis[g[x][i]]){ vis[g[x][i]]=1; if(
2014-04-12 23:10:50
284
原创 SGU 347 Join the Strings
#include#include#includeusing namespace std;string s[110];bool cmp(string s1,string s2){ return s1+s2}int main(){ int n; while(scanf("%d",&n)==1){ for(int i=0;i
2014-04-12 13:06:21
287
原创 SRM 616 ColorfulCoinsEasy
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #i
2014-04-12 12:58:39
447
原创 SRM 616 WakingUpEasy
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #i
2014-04-12 12:54:50
347
原创 Round #240 (Div. 2) A 、Mashmokh and Lights
1、#include#includeusing namespace std;int main(){ int a[110]; memset(a,0,sizeof(a)); int n,m; scanf("%d%d",&n,&m); for(int i=0;im;i++){ int temp; scanf("%d",&temp);
2014-04-07 17:59:59
379
原创 Round #117 (Div. 2) D 、Common Divisors
1、求两个串的公共#include#include#include#includeusing namespace std;int next[100010];string s1,s2;int cal_period(string s){ next[0]=next[1]=0; for(int i=1;i int j=next[i]; wh
2014-04-07 17:03:39
370
原创 【清澄OJ】碱基比例
1、要注意int相除#include#include#includeusing namespace std;int main(){ string s; cin>>s; int cnt=0; for(int i=0;i if(s[i]=='C'||s[i]=='G') cnt++; double temp=(double)cnt/s
2014-04-06 21:58:17
454
原创 【清澄OJ】字符串对比
1、#include#include#include#include#includeusing namespace std;int main(){ string s,t; cin>>s>>t; if(s.length()!=t.length()){ printf("1\n"); }else if(s==t){ pr
2014-04-06 21:46:01
425
原创 【清澄OJ】求子串
1、STL,让编程如此简单~#include#include#include#includeusing namespace std;vector v;int main(){ string s; int n; cin>>s>>n; for(int i=0;i string t=s.substr(i,n); v.push_ba
2014-04-06 21:11:00
329
原创 【蓝桥杯】最短路
1、Codeblocks13.1#include #include #include #include #include #include using namespace std;const int maxn=20000,MAX=~0U>>1;int n,m,src;vector > g[maxn+10];int dist[maxn+10];bool
2014-04-04 23:29:57
264
原创 CDOJ 794 Balloon Game
1、我们统计三个量:原来的气球颜色数、可变颜色的空格数、不可变颜色的空格数。2、首先,如果可变颜色的空格数为0,那么不管怎么放气球,都改变不了奇偶性,如果可变颜色的空格数为1,那么先手必胜,因为他可以任意改变奇偶性。如果可变颜色的空格数大于等于2,那么后手必胜,但是又一个问题,就是不可变颜色的空格数如果为奇数,是可以改变先后手的。也就是说,在可变颜色的空格数大于等于2的情况下,所有空格数如果是
2014-04-03 20:45:43
335
原创 CDOJ 793 A Linear Algebra Problem
1、就利用矩阵相乘的公式,注意a[i][j]==0(i!=j),可以大大化简公式,但是不要忘了考虑i==j的情况。具体见代码。#includeusing namespace std;int n,a[1010];bool flag;int main(){ while(scanf("%d",&n)==1){ flag=true; for(int i=
2014-04-02 20:04:38
334
原创 SCU 2014 Training Weekly 2 C、Room Painting
1、贪心法,看代码吧。注意油漆可以重复购买。#include#include#includeusing namespace std;long long a[100010],b[100010];int main(){ int n,m; long long ans; while(scanf("%d%d",&n,&m)==2){ ans=0;
2014-03-30 22:56:52
332
原创 POJ 2970 The lazy programmer
1、本题用贪心法以及优先队列,首先按照截止日期排序,然后用一个变量T记录时间,若T大于截止日期,则利用优先队列,选择当前最大的a值来将T减小。如果将b用完了,则将这个a出队。这样一直减,直到T等于截止日期。2、要注意的是每次队列都要清空。3、比较坑爹的是输出的时候用%lf是错的,改成%f就对了。。。原因似乎是历史遗留问题,当且仅当在POJ且用g++时,会出错,用c++是不会出错的。所以以后
2014-03-30 22:25:15
366
原创 【蓝桥杯】格子刷油漆
1、本题需要用到两个数组来实现递推,数组d,表示从一角出发,回到它对应的格子的方法数,数组a,表示从一角出发,遍历完所有格子(不一定回到对角)的方法数。2、得出这个结论并不困难,只要在纸上画一个2*2的格子,走一遍就知道了。3、先得出d的递推式子,再得出a的递推式子(见代码)。只要画出2*2的情况,写出这些递推式子不难。4、最终答案等于4个角+中间。中间的话,可以选上方或下方格子为起点
2014-03-29 20:56:26
986
原创 【蓝桥杯】矩阵翻转
1、这是CF round 190(DIV 1)的D题,需要用到数学知识和贪心法。2、感谢cgy4ever的解题报告,我是参考了它写出来的。3、本题时间复杂度是O(2^m*m*m),首先找到中线,用二进制枚举竖中线的上半部分(包括矩阵中心)的翻转情况,然后推出竖中线下半部分的情况。紧接着O(m)枚举横中线左半部分的情况,对于每一格,都有-1和1两种情况(-1代表翻转,1代表没有),顺便可以推
2014-03-29 17:36:20
1836
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人