algorithm_普通练习
文章平均质量分 81
theArcticOcean
Website: https://www.weiy.city
Wechat Subscription Account: 胡桃小院
展开
-
codeforce 492C. Vanya and Exams
题目:http://codeforces.com/problemset/problem/492/C还是数据和问题,注意会超过int,哎,以后常常用long long吧,真是~#include #include #include#define LL long longusing namespace std;const int maxn=1e5+5;struct obj{ i原创 2015-06-28 17:11:13 · 639 阅读 · 0 评论 -
CodeForces 304C Lucky Permutation Triple(推理分析)
http://codeforces.com/problemset/problem/304/C题目大意:对于一个整数n有元素是0--n-1的排列,求这样的排列3元组,他满足:分析:当n是1时,直接0,0,0。 当n是奇数:0,1,2,……,n/2,……,n-2,n-11,2,3,……,n/2+1,……,n-1,01,3,5,……,n,……,2(n-1)-1,n-1 (原创 2015-12-28 10:17:00 · 746 阅读 · 0 评论 -
hdu 2608 0 or 1(数论推理)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=26080 or 1Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2947 Accepted Submission(s):原创 2015-08-31 19:58:17 · 875 阅读 · 0 评论 -
hdu 2094 产生冠军(STL map || 拓扑 || STL set)
题目:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=23626Description有一群人,打乒乓球比赛,两两捉对撕杀,每两个人之间最多打一场比赛。 球赛的规则如下: 如果A打败了B,B又打败了C,而A与C之间没有进行过比赛,那么就认定,A一定能打败C。 如果A打败了B,B又打败了C,而且,C又原创 2015-08-18 11:02:06 · 550 阅读 · 0 评论 -
斜率在解题中的巧用
斜率这个概率很简单,描述了几何线的变化。恰当的运用它能让整个思维变得开阔。51nod 1451 合法三角形http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1451有n个不同的点,问有多少组三元组能构成面积非0的三角形。Input单组测试数据。第一行一个整数n原创 2016-03-19 21:00:49 · 1090 阅读 · 0 评论 -
hdu 4311 Meeting point-1 (快速求解曼哈顿距离和)
http://acm.hdu.edu.cn/showproblem.php?pid=4311大意:有(0分析:不同的人有不同的思路,有人是找递推关系,有人是按x,y排序(我没完全看明白~~),来说说我的思路。直接来是2重大循环是会超时的,之前学习过模拟退火算法,里面有一个不断接近正确值的过程,即先近似再逐渐精确,受此启发,我来个简单粗暴的,计算出X的和,Y的和,分别除以n,得到一个平均值点原创 2016-03-20 19:42:06 · 910 阅读 · 0 评论 -
hdu 4334 Trouble(两个数组寻找目标和)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=4334 大意:给出5个数组A[], B[], C[], D[] , E[],他们的长度都是n,求解是否存在这样的情况,从每一个数组内拿出一个数字满足:a+b+c+d+e=0a+b+c+d+e=0分析: 一开始是这样想的:将其中两个数组合并起来,剩下三个数组遍历,得到3数之和,其相反数作为合并数组的二分查找原创 2016-04-04 10:40:15 · 688 阅读 · 0 评论 -
bestcoder Round #75(前四)
King's Cake (简单数学)http://acm.hdu.edu.cn/showproblem.php?pid=5640大意:一块n*m的蛋糕切成多个正方形(体),正方形尽可能大,求解正方形的个数。分析:此过程像极了GCD#include #include using namespace std;int sum=0;void gcd(int a,int原创 2016-03-13 09:18:44 · 534 阅读 · 0 评论 -
algorithm 题集一 (16.04.30)
贡献一些简单题/基础题,心情不好的时候来写吧。51 nod 1113 矩阵快速幂简单的矩阵快速幂 http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1113#include <stdio.h>const int mod=1e9+7;typedef long long LL;int n,m;struct matrix{原创 2016-04-30 14:22:07 · 735 阅读 · 0 评论 -
algorithm 题集二 (16.04.30)
继上一篇博文讲,有一类题不像上一篇博文的题那样简单但接触后感觉不难,这类题单独做了一个题集。POJ 2229 Sumsetshttp://poj.org/problem?id=2229 大意:求解一个数字分解成2的幂的方案数 7: 1) 1+1+1+1+1+1+1 2) 1+1+1+1+1+2 3) 1+1+1+2+2 4) 1+1+1+4 5) 1+2+2+2 6)原创 2016-04-30 15:16:16 · 3801 阅读 · 2 评论 -
algorithm 题集三 (16.05.24)
练习的故事仍然继续下去,今天写下的题目难度适中,记录自己近段时间的训练成果。涉及数学,动态规划,字符串问题。poj 2159 Ancient Cipher(规律)http://poj.org/problem?id=2159 大意:密码加密方法,两种加密方式,第一种,替换加密:Substitution cipher changes all occurrences of each letter to原创 2016-05-24 23:56:46 · 5471 阅读 · 0 评论 -
algorithm 题集四 (16.06.10)
继2016.05.24续:codeforces 651B. Beautiful Paintings-简单http://codeforces.com/problemset/problem/651/B 大意:给出一个序列,求解其任意排列中满足ai + 1 > ai 的元素个数最大和。 分析:理想情况下,无重复元素的0从小到大的排列,满足条件的元素个数最多,是n-1. 非理想情况下还有重复元素,原创 2016-06-10 10:35:47 · 2705 阅读 · 0 评论 -
algorithm 题集五 (16.07.20)
acdream 1213 Matrix Multiplicationhttp://acdream.info/problem?pid=1213 大意:定义矩阵A,a_{ij}=1表示i结点是边j的一个端点。其他部分是0,。求解A^{T}A中数值的和。 分析:A^{T}A的结果 举例子找规律:#include <iostream>#include <cstdio>#include <cstri原创 2016-07-20 21:15:26 · 1120 阅读 · 0 评论 -
algorithm 题集六 (16.11.12)
nyist 8 一种排序 – operatorhttp://acm.nyist.net/JudgeOnline/problem.php?pid=8现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复;还知道这个长方形的宽和长,编号、长、宽都是整数;现在要求按照一下方式排序(默认排序规则都是从小到大);1.按照编号从小到大排序2.对于编号相等的长方形,按照长方形的长排序;3.如果编号和长原创 2016-11-12 17:15:59 · 838 阅读 · 0 评论 -
algorithm 题集七 (17.01.30)
51nod 1449 砝码问题http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1449现在有好多种砝码,他们的重量是 w0,w1,w2,… 每种各一个。问用这些砝码能不能表示一个重量为m的东西。 样例解释:可以将重物和3放到一个托盘中,9和1放到另外一个托盘中。Input 单组测试数据。 第一行有两个整数w,m (2原创 2017-01-30 12:59:14 · 611 阅读 · 0 评论 -
Poj 3210 Coins(推理)
题目:http://poj.org/problem?id=3210CoinsTime Limit: 1000MS Memory Limit: 131072KTotal Submissions: 7012 Accepted: 4624DescriptionSnoopy has three coins. One d原创 2015-09-01 22:39:26 · 803 阅读 · 0 评论 -
codeforce 7A. Kalevitch and Chess(粉刷)
题目:http://codeforces.com/problemset/problem/7/A第一次做这题时一阵瞎敲(当时题目的大意是一个粉刷匠粉刷墙壁,但是并不影响问题原型),啥也不懂。后来训练时又遇上了,思路清晰多了。在墙上刷一次无论是横着的还是竖着的都具有”贯穿性“,即连续8个点全是B。那么在8*8的墙上统计所有行中B的数量,最小的就是列的粉刷数。同理,列上最小的B的数量就是粉刷行数原创 2015-07-11 15:42:29 · 846 阅读 · 0 评论 -
codeforces 301D. Yaroslav and Divisors(遍历和排序的艺术)
http://codeforces.com/problemset/problem/301/D大意:给定一串数字,然后有m个询问,每一个询问问从l到r一共有多少对整除关系?一个数i的在1——n内的倍数的个数是 n/i那么,1-i的倍数个数有: f(1,i)=n/1+n/2+n/3+……+n/i1-i在k内的倍数个数有:g(1,i,k)=k/1+k/2+k/3+……+k/iL-原创 2015-12-23 23:53:59 · 979 阅读 · 0 评论 -
codeforce 493B. Vasya and Wrestling(多重条件比较)
题本不难,只是要多重处理,另外注意数字和超出int范围。认真读题,好好学习英语~#include #include#include#define LL long long using namespace std;const int maxn=2e5+1;LL n,q1[maxn],q2[maxn],top1,top2,sum1,sum2;int main(int argc,原创 2015-06-28 15:38:29 · 627 阅读 · 0 评论 -
UVA10892 LCM Cardinality(gcd)
题意:给定整数n,问有多少组(a,b)使得lcm(a,b)=n,(3,4),(4,3)算作同一组。本题nlcm(n,n)=n也算作一组。think about y=x^(0.5) curve. DETAL=(x+0.5)^(0.5)-x^(0.5)=0.5/[(x+0.5)^(0.5)+x^(0.5)] int imax=sqrt(n+0.5). 另外,不要打错关键步骤,无限循环操原创 2015-06-29 21:00:08 · 650 阅读 · 0 评论 -
codeforce 7B. Memory Manager
题目:http://codeforces.com/problemset/problem/7/B模拟计算机的内存处理:使用内存,释放内存,整理内存(把未释放区集中于起点)。使用数组模拟一片内存,完成这三种操作。#include #include#includeusing namespace std;int mem[105],cnt;int worka(int k,int m){原创 2015-07-11 15:24:48 · 705 阅读 · 0 评论 -
hdu 4462 Scaring the Birds(暴力,细读)
题意:http://acm.hdu.edu.cn/showproblem.php?pid=4462我想说,这道题不是考验数据结构或是神马复杂的算法,就是考验人的阅读能力和思维的缜密。有两点:第一点都能看出来,当k=0时不能保护已有的庄稼;第二点,当k=n*n时,即所有的点都是没有庄稼的,直接输出0.#include #include#includeusing namespace原创 2015-07-04 21:15:50 · 700 阅读 · 0 评论 -
练习:hdu 5523 Game + hdu 5524 Subtrees
http://acm.hdu.edu.cn/showproblem.php?pid=5523XY在玩一个游戏:有N根柱子排成一排,编号为1到N,每个柱子上面有一块宝石,现在XY站在第S根柱子上,出口在第T跟柱子上,XY需要拿到所有宝石后从出口离开。每次XY可以走到相邻的柱子上,也可以使用超能力跳到第一根柱子或者第N根柱子上,如果离开了柱子之后再也不能到达这里。为了节省能量,XY想用最少次数超能原创 2015-11-01 13:11:39 · 1081 阅读 · 0 评论 -
implementation的几道CF题
有时一些Codeforces上的implementation题也挺有意思的(给我等菜鸟继续刷题的信心啊!!)codeforces 420 A. Start Uphttp://codeforces.com/problemset/problem/420/A大意:给一字符串,求解是否是镜像串。(读懂题了就行)镜像文字: 逆序看和原来是一样的。所以对单个字母也是有要求的,比如S w原创 2015-12-12 20:10:56 · 601 阅读 · 0 评论 -
codeforces 304B. Calendar (日期相减)
http://codeforces.com/problemset/problem/304/B大致题意:给出两个日期,求出它们之间相差的天数。自己用C++写的挺长(主要是瑞年的干扰)。。。#include #include using namespace std;bool leap[3000];int month[15];int main(){ //freopen("原创 2015-12-28 11:30:25 · 847 阅读 · 0 评论 -
codeforces 420C. Bug in Code
http://codeforces.com/problemset/problem/420/CRecently a serious bug has been found in the FOS code. The head of the F company wants to find the culprit and punish him. For that, he set up an or原创 2015-12-12 19:34:41 · 1217 阅读 · 0 评论 -
BestCoder Round #64 (div.2) 1002 and 1003
Sumhttp://acm.hdu.edu.cn/showproblem.php?pid=5586Problem DescriptionThere is a number sequence A1,A2....An,you can select a interval [l,r] or not,all the numbers Ai(l≤i≤r) will b原创 2015-11-29 10:18:56 · 711 阅读 · 0 评论 -
codeforces 412 impelment、greedy
A. Posterhttp://codeforces.com/problemset/problem/412/A要点:重复路径尽可能短(贪心)。#include #include using namespace std;char s[105];int n,k;void right(int &pos){ while(pos<n){ if(s[pos]!原创 2015-11-28 18:55:41 · 698 阅读 · 0 评论 -
codeforces 303C Minimum Modular(下标的艺术+math)
http://codeforces.com/problemset/problem/303/C大致题意:给定一串数字,在最多移除k个数字的前提下,求出最小的数字m,使得不等式 恒成立。分析:最简单的思路,遍历1-n,对于吗,每个数字a[i]取模,设余数dex, cnt[dex]++,如果cnt[dex]>1 ans++; 如果ans然而,超时。。。(巧妙的设置下标——用数组元素原创 2015-12-24 17:07:57 · 716 阅读 · 0 评论 -
POJ 2661 Factstone Benchmark (log2的故事)
新的linux系统下写的第一个C++程序。(哎compile error了两次,log2(x)化成logx/log2,logx是以自然对数为底的)http://poj.org/problem?id=2661转化题意:求解最大的n, 满足 n!" alt="">转化: log_2(n!) = log_2(1)+log_2(2)+log_2(3)+\cdots+log_2(n)" al原创 2016-01-22 14:51:39 · 643 阅读 · 0 评论 -
codeforces 424D. Biathlon Track(dp+ brute force)
http://codeforces.com/problemset/problem/424/DRecently an official statement of the world Olympic Committee said that the Olympic Winter Games 2030 will be held in Tomsk. The city officials deci原创 2015-12-22 16:37:08 · 668 阅读 · 0 评论 -
algorithm 题集八 (18.03.25)
本文一共12题,均来自《剑指offer》,不复杂。在平时的练习中收集了部分组合而成。(1)输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。(2)用两个栈来实现一个队列,完成队列的Push和Pop操...原创 2018-03-25 16:05:44 · 419 阅读 · 0 评论