自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小马的博客

最穷不过要饭,不死终会出头

  • 博客(70)
  • 资源 (6)
  • 收藏
  • 关注

原创 2015ACM/ICPC亚洲区沈阳站-重现赛(感谢东北大学) HDU 5512 Pagodas

题意:n座塔,除编号为a,b的塔保留下来以外,其他塔需要重建,对于已建成的塔j,k(包括a,b两塔),每次只能重建编号为j+k或j-k的塔,Yuwgna和Iaka两个僧人轮流建一座塔,Yuwgna先手,最后不能建的人输,问最终获胜的人是哪个解:我们其实可以尝试一下j+k与j-k都可以得到哪些数,最终我们发现能建的塔的编号必定是gcd(a,b)的倍数(其实,由不断的j-k我们可以联想到更相减损法

2015-11-29 11:27:50 732

原创 BestCoder Round #64 (div.2) A Numbers&&HDU 5585

Numbers  Accepts: 480  Submissions: 1518 Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others)问题描述给一个数N,如果N是2、3或者5的倍数,输出"YES",否则输出"NO".输入描述

2015-11-28 23:17:38 299

原创 BestCoder Round #64 (div.2) B Sum&&HDU 5586

Sum  Accepts: 322  Submissions: 940 Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others)问题描述给n个数{A}_{1},{A}_{2}....{A}_{n}A​1​​,A​2​​....A​n​​,

2015-11-28 22:11:54 345

原创 coderforce 548A. Mike and Fax

题意:给你一个字符串,问你能否分成K个大小一样的回文串,能输出YES,否则输出NO;#include#include#includeusing namespace std;const int maxm=1e3+10;char s[maxm];int judge(char *temp){ int len=strlen(temp); int cnt=0; for(

2015-11-28 17:23:48 442

原创 coderforce 585A. Gennady the Dentist

题目大意:有n个熊孩子去看医生,每个人都有一个pi(信心值)、一个vi(声音影响度)、一个di(影响值)。当一个熊孩子接受治疗时,会发出vi的影响,影响后面vi个单位,分别为vi-1,vi-2,vi-3……0.当某个人的信心值pi小于0时,他就吓尿了于是就跑掉了,同时对后面所有人造成di的影响。(注:造成x的影响意思为pi-x)。你的任务就是统计有多少个熊孩子看了医生,并且按照顺序输出他们的编号。

2015-11-28 16:09:17 356

原创 coderforce Codeforces Round #333 (Div. 1) A. The Two Routes

题意:给你一个完全图,里面的边不是火车道就是汽车道,然后任意时刻,火车和汽车都不能相遇在除了1,n的其他点每条边的边权值都是1,然后问你最小时间使得两种车都能到达n点解:两个Floyd算法搞定。题目中要求两个相遇的最小,则输出的应该判断二者可不可以到达,若可以到,则输出两个时间的最大,不可以就输出-1.#include#include#includeusing namespace

2015-11-27 10:39:50 354

原创 Codeforces Round #333 (Div. 2) B. Approximating a Constant Range

题意:n个数的序列,问最长的区间,区间内最大的数和最小的数差小于等于1#include#include#includeusing namespace std;const int maxm=1e5+10;int a[maxm];int main(){ int n; while(scanf("%d",&n)!=EOF) { int i,j;

2015-11-25 18:45:48 362

原创 Codeforces Round #333 (Div. 2) A. Two Bases

题意:比较两个进制数大小#include#include#includeusing namespace std;#define LL unsigned long longconst LL maxm=200;LL a[maxm];LL b[maxm];LL pow(LL n,LL k)//n的K次方{ LL sum=1; for(LL i=1;i<=k;i++)

2015-11-25 18:44:07 287

原创 coderforce 519D A and B and Interesting Substrings

题目大意:给26个字母赋值,然后输入一个字符串,求首位和末位字符相同且首位和末位之间(不含端点)值的和为0的子串的个数题目分析:预处理出前缀和,可以发现要满足中间和为0,只需要找前缀和相同的两个字符即可,然后用map离散一下数据,map[字符][对应的前缀和],每次sum加上对应的map值,相当于动态规划的过程#include#include#include#includeusing

2015-11-24 15:39:27 286

原创 coderforce 519C A and B and Team Training

题意:2个A和1个B可以组成一组,2个B和1个A也可以成一组。给你N个A和M个B,问最多可以组成多少组解:当2*n#include#include#includeusing namespace std;int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF) { if(2*n<m)

2015-11-24 14:37:19 287

原创 coderforce 500B New Year Permutation

题意:序列 a1, a2, ..., an , b1, b2, ..., bn, 如果存在整数 k (1 ≤ k ≤ n) 符合 a1 = b1, a2 = b2, ..., ak - 1 = bk - 1 并且 ak bk .则称 a 序列比 b序列好。题目给出一个序列 p ,再给出一个n*n的矩阵A , A[i][j] = 1 ,表示p中第i个元素能跟第j个元素交换

2015-11-23 21:00:13 343

原创 coderforce 500A. New Year Transportation

水过#include#include#includeusing namespace std;const int maxm=1e5+10;int a[maxm];int main(){ int n,t; while(scanf("%d%d",&n,&t)!=EOF) { for(int i=1;i<=n-1;i++) {

2015-11-23 19:44:28 319

原创 coderforce 535B Tavas and SaDDas

题意:此题是判#include#include#includeusing namespace std;#define LL long longLL N(LL k){ LL sum=1; for(LL i=1;i<=k;i++) { sum*=2; } return sum;}LL P(LL k)//计算数字的数位有多少位{

2015-11-23 17:58:20 294

原创 coderforce 492B Vanya and Lanterns

解:题目的意思是有一条长度为 l 的街道,在这条街道上放置了n个相同的灯,设从一端位置为0,每个灯的位置在ai处,问灯的最小照射半径为多少时,才能满足整条街道都能被灯光照到。此题可以用贪心来做,由于除了两端的两个灯之外,每两个灯之间都是由两个灯共同照射的,故只需要求出两两灯之间的距离一半的最大值,再求出两端两个灯距离街道两端尽头的距离,三者的最大值就是所求的最小半径。#include#inclu

2015-11-22 13:36:15 342

原创 coderforce 2057B Amr and Pins

题意:给出一个圆的半径,圆心初始坐标,圆心最终坐标,知道该圆可以围绕边上的任意位置旋转任意角度,问旋转多少次能够到达目标圆心位置。解:我们可以知道的是,如果绕着园边上的某一个点旋转360度,那么圆心能够走过一个圆,并且最远的位置距离原来的圆心为2倍的半径,那么如果围绕圆边上的任意顶点都旋转360度,则会达到一个以2倍半径为半径的圆,在这个圆内,原来的圆心都可以到达。所以要想计算某一个圆

2015-11-22 01:03:48 293

原创 coderforce 507A Amr and Music(贪心)

题意:要在一些数中选一些数,sum解:结构体排序就可以水过了;#include#include#includeusing namespace std;const int maxm=1e5+10;int a[maxm];struct node{ int x,id;}t[maxm];int cmp(node p,node q){ return p.x<q.x;

2015-11-22 00:17:49 340

原创 coderforce 595B. Pasha and Phone(容斥原理)

题意:现有一长度为n的空号码,给定整数k(满足n % k == 0)和具有n/k个元素的序列a[]和b[]。定义一个电话号码是good:将长度n分成n/k块,要求第i块填a[i]倍数且不能以b[i]开头,不够k位前面可以补0。问你good 电话号码的个数%(1e9+7)。#include#include#include#includeusing namespace std;#defi

2015-11-21 23:59:23 288

原创 费马小定理

(a^b)%p=(a^(b%(p-1)))%p

2015-11-21 22:53:54 340

原创 BestCoder Round #63 (div.2) sequence1

sequence1  Accepts: 565  Submissions: 1001 Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others)问题描述给定长度为nn的序列a,求有多少对i, j (i i,j(ij),使得|a_i-a_j| \

2015-11-21 21:45:58 327

原创 Codeforces Round #332 (Div. 2) C. Day at the Beach

题意:就是给一个序列,然后划分区间,每个区间自己排序之后的结果和整体排序的结果是一样的,问最多划分多少区间。#include#include#includeusing namespace std;const int maxm=1e5+10;int a[maxm];int b[maxm];int main(){ int n; while(scanf("%d",&n

2015-11-21 11:26:04 273

原创 Codeforces Round #332 (Div. 2) A. Patrick and Shopping

题意:给你三个距离,a,b,c,求经过两家shop的最短路。解:求min(a+b+c,min(2*b+2*a,min(2*a+2*c,2*b+2*c)));#include#includeusing namespace std;#define LL long longint main(){ LL a,b,c; while(scanf("%lld%lld%lld",&a

2015-11-21 11:11:04 268

原创 Codeforces Round #332 (Div. 2) B. Spongebob and Joke

题意:若第三行的数在第二行的数中出现过,并且全部为出现1次的,则输出possible,并输出其对应的在第二行中的位置。若出现过两次,则输出Ambiguity,否则,输出Impossible.#include#include#includeusing namespace std;const int maxm=1e5+10;int a[maxm];int f[maxm];int b[ma

2015-11-21 10:58:16 296

原创 coderforce B .A and B and Compilation Errors

题意:第一行给出数字的个数,第二行给出原始数字,第三行给出处理一个数字之后剩下的数字,第四行给出处理两个数字之后剩下的数字,找出这两次分别处理的数字。#include#include#includeusing namespace std;#define LL long longint main(){ int n; while(scanf("%d",&n)!=EOF)

2015-11-20 22:44:40 350

原创 coderforce 489ASwapSort

题意:交换数组元素,取最少步数,排好序。输出交换元素的位置。#include#include#includeusing namespace std;const int maxm=1e4+10;int a[maxm];int main(){ int n; while(scanf("%d",&n)!=EOF) { for(int i=0;i<n;i

2015-11-20 11:20:34 295

原创 coderforce 490A - Team Olympiad

题意:有n个人,他们分别精通1、2、3这三种技能,凑齐1、2、3可以组一个队伍,问这些人最多能组几个队伍并输出。直接用3个数组存相应技能有哪些人会,然后从下标0开始凑队即可#include#include#includeusing namespace std;const int maxm=5e3+10;int a[maxm];int b[maxm];int m

2015-11-20 09:43:52 306

原创 coderforce 549A Face Detection

题意:找图中的face有多少个。(来一个最长的代码)#include#include#include#include#includeusing namespace std;const int maxm=100;mapq;char s[maxm][maxm];int main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF)

2015-11-18 20:54:39 367

原创 coderforce 550A. Two Substrings

题意:如果字符串中有AB且有BA,而且他们的位置不重合,就输出YES,否则NO。#include#include#includeusing namespace std;const int maxm=1e5+10;char s[maxm];int main(){ while(scanf("%s",s)!=EOF) { int len=strlen(s);

2015-11-18 20:16:39 623

原创 coderforce 525B. Pasha and String

解题说明:此题是一道模拟题,题意是给出一个长度不超过2*10^5的字符串,进行m次反转。每次反转第a个到第len-a+1个字符之间这一段。求经过m次反转后的字符串是什么。其中len 为字符串的长度。具体做法是对于第i个字符,只有它之前的字符(包括自己)需要反转时,才会引起第i个字符的位置改变。所以我们只需要判断第i个字符的位置一共变了多少次,如果是奇数次,就让它改变位置;否则位置不变。#inc

2015-11-18 17:22:14 329

原创 coderforce 545B. Equidistant String

题意:求一个字符串,使得他与S,T,相似度相差相等#include#include#includeusing namespace std;const int maxm=1e5+10;char s1[maxm];char s2[maxm];char s3[maxm];int main(){ while(scanf("%s%s",s1,s2)!=EOF) {

2015-11-18 16:23:36 413

原创 coderforce 581C. Developing Skills

题目大意:有n个技能,每个技能有一个初始熟练度( [1,100] )。现在有k个技能点,每个技能点可以让某个技能的熟练度+1(可以重复给同一个技能加熟练度,但熟练度不能超过100)。最后的得分是每个技能的熟练度整除10的求和。即∑((int)(skill/10))。问最后得分的最大值是多少?#include#include#includeusing namespace std;cons

2015-11-17 23:41:01 282

原创 CodeForces#325 B. Laurenty and Shop

题目大意:你要从(2,n)走到(1,1)点两次,要求路径不完全重复,只能通过中间的过道一次。求最小和。#include#include#includeusing namespace std;const int inf=1<<29;const int maxm=1e3+10;int a[maxm];int b[maxm];int c[maxm];int main(){ i

2015-11-17 15:08:26 303

原创 Codeforces Round #321 (Div. 2) C. Kefa and Park time limit per test

题目大意:一棵树,有的节点上有猫,有的没有。求出从根节点出发,到达叶子节点的路径中连续出现猫的数量不能超过m的路径有几条。解题思路:DFS。细节:vector构造树时因为不知道谁是父亲节点谁是子节点,因此两个点都当做父亲节点处理。判断叶子节点时,儿子个数为1的就是叶子节点。#include#include#include#includeusing namespace std;co

2015-11-17 13:55:23 392

原创 coderforce 598B Queries on a String

题意:给出一个字符串(1的字符当成一个环来逆时针转 k 次,得到一个新字符串,以后每次查询修改,都是在此字符串基础上进行的。思路:先用一个字符串临时存放(L--r)的字符,因为下标是从0开始,所以是(src[L-1]到src[r-1])位字符,再按每次查询修改k次进行修改因是环,所以位置 i --> (i+k)%(r-L+1);#include#include#includeusing

2015-11-16 22:07:42 439

原创 HDU 1248 寒冰王座(裸完全背包)

裸完全背包问题,背包中装最大量,然后用n-dp[n];#include#include#includeusing namespace std;const int maxm=1e5+10;int w[10];int dp[maxm];int main(){ int t; scanf("%d",&t); while(t--) { int

2015-11-16 20:10:40 326

原创 HDU 1114 Piggy-Bank(完全背包问题)

题意:知道储钱罐里的硬币重量和各种面值硬币对应的重量,若能确定其中硬币的最小总价值,输出最小总价值,否则输出This is impossible.思路:需要注意最小总价值时硬币重量是否与已知相等的判断。#include#include#includeusing namespace std;const int maxm=1e4+10;int dp[maxm];int w[50

2015-11-16 20:02:31 328

原创 Codeforces Round #331 (Div. 2) B. Wilbur and Array

题意:要求一个a数组经过最少多少次可以变成b数组。a数组的初始值全为0,每次改变可以从i到n改变;#include#include#includeusing namespace std;#define LL long longint main(){ LL n; while(scanf("%lld",&n)!=EOF) { LL a;

2015-11-16 10:27:10 304

原创 Codeforces Round #331 (Div. 2) A. Wilbur and Swimming Pool

题意:给你n个点,求矩形面积。要求矩形的每条边与坐标轴平行。如果不能得出,则输出-1;#include#include#include#includeusing namespace std;int x[5],y[5];int main(){ int n; while(scanf("%d",&n)!=EOF) { int h=-2001,l=

2015-11-16 10:25:01 287

原创 coderforce 515A Drazil and Date

题意:给你一个坐标(x,y);人可以走上下左右四个方向,人的起点为(0,0);问你能否刚好走ste步走到哪里;解:先算出abs(x)+abs(y),意思是先从(0,0)走到那里,然后判断走到哪里的步数,1:如果大于step,则不能到;2:走到哪里了,步数剩余%2为奇数的话,随便怎么走,都不能走到那里,偶数则可以;#include#include#include#includeusing

2015-11-15 23:53:24 298

原创 coderforce 519A A and B and Chess

水题不解释,仔细读题皆可#include#include#includeconst int maxm=50;char map[maxm][maxm];int main(){ int sum1=0,sum2=0; for(int i=0; i<8; i++) { scanf("%s",map[i]); } for(int i=0;

2015-11-15 23:33:44 293

原创 HDU 1873 看病要排队(优先队列)

#include#include#include#include#includeusing namespace std;char s[10];struct node{ int num,id; friend bool operator<(node a,node b) { if(a.num!=b.num) return a

2015-11-15 22:55:06 312

Android 照片查看器最简单的实现

Android 照片查看器最简单的实现

2016-05-11

ListView显示,跳转

ListView显示,跳转

2016-05-11

Android对话框

Android 点击一个按钮,相应弹出该对话框

2016-05-09

ListView把数据显示到屏幕

ListView把数据显示到屏幕

2016-05-08

Android实现查询数据库,把数据库内容显示到屏幕

Android实现查询数据库,把数据库内容显示到屏幕

2016-05-08

我的解题报告NO.2并查集 题解题报告

我的做题是学长给我们发的解题报告,里面可能有错哦

2015-07-11

空空如也

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

TA关注的人

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