ACM算法编程
OJ题解,HDU,POJ,ZOJ,UVA,相关C++,GCC,编程算法知识
herongweiV
喜爱编程,热爱算法。
展开
-
【编程之美 】-中国象棋将帅问题
【描述】《编程之美》上的此问题是有一定限制的:把“将”和“帅”限制在一个3*3的网格中,那么根据规则是“将”和“帅”是不能同在一条竖线的位置,求出所有符合条件的“将”和“帅”的位置,并且只用一个变量来储存。 【思路】书上给出了几个解答: (1)第一个答案用二进制来表示,稍微有点复杂:一个8位的byte类型能够表达2^8=256个值,所以用它来表示A,B的位置信息绰绰有余,因此可以把字节的变量原创 2017-02-10 13:46:21 · 580 阅读 · 0 评论 -
POJ-1753-Flip Game【翻转棋盘+枚举+dfs】
【链接】:click here 【题意】: 给你一个4*4棋盘,上面有且仅有白色(w)和黑色(b)两种颜色标记,并且,如果正面是白色,反面则是黑色,反之亦然。 现在让你翻转棋盘,问最少翻转多少次,使得最后棋盘的颜色统一(即全为白色或者全为黑色)。 如果不能翻转成功,则输出Impossible;否则,输出翻转成功的最小次数。 注意:翻转方法,如果你翻转了一个棋盘的原创 2017-02-02 19:18:09 · 1788 阅读 · 0 评论 -
DP-编辑距离问题
【题意】设A和B是2个字符串。要用最少的字符操作将字符串A转换为字符串B。这里所说的字符操作包括 (1)删除一个字符; (2)插入一个字符; (3)将一个字符改为另一个字符。 将字符串A变换为字符串B所用的最少字符操作数称为字符串A到B的编辑距离,记为d(A,B)。试设计一个有效算法,对任给的2个字符串A和B,计算出它们的编辑距离d(A,原创 2017-01-24 17:13:29 · 671 阅读 · 0 评论 -
CodeForces 607A (二分)
/* ********************************************** CodeForces 607A Author:herongwei Created Time: 2016/5/31 13:00:00 File Name : main.cpp 一个线段上有n个灯塔,每个灯塔有两个属性 (位置和破坏距离) 现在一次性从右到左开原创 2016-06-01 10:19:44 · 3462 阅读 · 0 评论 -
CodeForces 546D (求素因子个数)
/***************************** CodeForces 546D Author:herongwei Created Time: 2016/5/31 13:00:00 File Name : main.cpp给出一个n,n开始是a!/b!,每次用一个x去整除n得到新的n,最后当n变成1的时候经过了几轮得分就是这个轮数,要求最大的分数是多少原创 2016-06-01 10:42:37 · 3671 阅读 · 0 评论 -
括号配对问题(I && II)
括号配对问题I时间限制:3000 ms | 内存限制:65535 KB难度:3描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYes原创 2016-04-07 21:40:54 · 1335 阅读 · 0 评论 -
BestCoder Round #73(div.2)
比赛链接:click hereRikka with Chess Accepts: 393 Submissions: 548 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)问题描述一个n \times mn×m的黑原创 2016-02-21 13:54:18 · 1562 阅读 · 0 评论 -
BestCoder Round #71 (div.2)
比赛链接:click here题解:KK's Steel问题描述我们可爱的KK遇到了一道数学难题:对于一条长为N\left( 1\leq N\leq {10}^{18}\right)N(1≤N≤1018)米的钢管,最多可以锯成几根小钢管,使得锯成的钢管互不相等且均不能围成三角形。输入描述第一行一个数T\left( 1\leq T\leq 10\right)原创 2016-02-08 19:39:57 · 3335 阅读 · 2 评论 -
Codeforces Round #342 (Div. 2)
比赛链接:click hereA. Guest From the Pasttime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputKo原创 2016-02-07 20:12:05 · 2078 阅读 · 0 评论 -
四种GCC内置位运算函数
int __builtin_ffs (unsigned int x)返回x的最后一位1的是从后向前第几位,比如7368(1110011001000)返回4。int __builtin_clz (unsigned int x)返回前导的0的个数。int __builtin_ctz (unsigned int x)返回后面的0个个数,和__builtin_clz相对。int __built翻译 2016-01-28 17:58:19 · 1566 阅读 · 0 评论 -
HDU (杭电) 计算机学院大学生程序设计竞赛(2015’11)
比赛链接:click here~~搬砖Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 0 Accepted Submission(s): 0Problem Description 小明现在原创 2015-11-29 16:18:46 · 2149 阅读 · 0 评论 -
浅谈C/C++的time_t函数
wordpress 博客链接:http://acmerbar.com/132.html 最近翻到《C专家编程》前言看到time_t函数,竟然一时之间全无概念,只是约莫知道是个有关时间的函数,这对已经学了C/C++的博主来说,简直是个嘲讽,本机测试了一下,大概是下面这个样子:#include #include #include #include #include using nam原创 2015-11-26 20:40:30 · 5568 阅读 · 1 评论 -
新博客
最近自己搭建了一个wordpress博客,新博客地址:http://acmerbar.com 欢迎各位访问,以后文章陆续会再新博客发布,此博客暂停更新~~原创 2015-11-09 20:58:40 · 1792 阅读 · 0 评论 -
[java]基础实例代码1
//static 关键字 静态变量&&静态方法package qqq;import java.io.*;import java.math.*;class person{ public static void fint() { System.out.println("object will gc!!!"); }}public class aaa{ public static原创 2015-10-30 21:21:37 · 800 阅读 · 0 评论 -
HDU 1251 (统计难题) 字典树模板&&map实现
【题目链接】:click here~~【题目大意】:Problem DescriptionIgnatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们原创 2015-10-27 23:06:13 · 1510 阅读 · 0 评论 -
CF 590B Chip 'n Dale Rescue Rangers(二分)
【题目链接】:click here~~【题目大意】:给你一个初始坐标,救援坐标,从初始坐标到救援坐标飞行的过程中会受到风力的影响(包括风力的方向和速度)0到t时间内,风力向量为(vx,vy),之后变为(wx,wy)注意飞行器可以在任意一个时刻随时变换方向和速度,但速度最大值不能超过V,求到达救援坐标的最少时间。【思路】:CF#327 div 2的D题,题面题意理解很重要,理解之后就原创 2015-10-27 20:34:20 · 1664 阅读 · 0 评论 -
2015年第一届中国大学生程序设计竞赛比赛总结
先上个终榜:http://board.ccpc.io比赛已经过去了两天,然而现在回想起来,事情就想发生在昨天一样,历历在目,怀着激动而又遗憾的心情,回顾一下当时比赛的场景。首先能够在自己的学校举办第一届国赛,能够代表学校参加比赛,集训队的每个成员都知道这是一个怎样的机会,感到荣幸又觉得充满很大的挑战,我们深知对手是全国众多985,211,高校的强队,我们深知如果把自己放到全国是怎样一种水平原创 2015-10-19 21:42:11 · 2381 阅读 · 2 评论 -
Uvalive 4267 Finding The Heaviest Path (Regionals 2008 Asia Taipei +DFS结点最大权值路径)
代码 :/** Problem: UVALive 4264* Running time: 46MS* Complier: G++* Author: javaherongwei* Create Time: 20:16 2015/10/14*/#include #include #include #include #include using namespace std;原创 2015-10-15 23:29:02 · 800 阅读 · 0 评论 -
UVALive 4264 Message(Regionals 2008 :: Asia - Taipei+模拟)
【题目链接】:click here~~【题目大意】给你n个10*10 的01组成的图像,再给你一个匹配图像,其中匹配图像可以看做是前面n个图像通过0,90,270,360度旋转得到,其中如果图像失真数小于20以内可以忽略,问匹配图像可以由前面那几个图像旋转得到。【思路】:比赛的时候由没有看清楚题意,其实看懂了题目就很简单,直接模拟即可。代码:/** Problem: UVALiv原创 2015-10-15 12:33:06 · 1005 阅读 · 0 评论 -
UVALive 4260 Fortune Card Game (Regionals 2008 Asia Taipei +DP)
【题目链接】:click here~~【题目大意】:A popular card game called ``fortune" is getting popular in country X. Fig. 1 shows one of the cards. In each card, a positive integer number (20 in the figure) is li原创 2015-10-14 21:23:57 · 1399 阅读 · 0 评论 -
Codeforces Round #325 (Div. 2) A && B
【题目链接】:click here~~A. Alena's Scheduletime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputAlena has succe原创 2015-10-13 09:23:50 · 1815 阅读 · 5 评论 -
ZOJ 补题 3903 && 3905 && 3911 (ZOJ Monthly, October 2015)
ZOJ 3903 Ants【题目链接】:click here~~【题目大意】给出一个长方体的最长边的长度,求在所有可能的情况下,在表面上从一个对角线到另一个对角线经过路径的平方和【思路】:只给出一个最长边,可以枚举其他两边,例如最长边假如给出3,那么 所有的可能长方体为{1,1,3},{1,2,3},{1,3,3},{2,2,3},{2,3,3},{3,3,3},n>3的情况下原创 2015-10-12 15:57:26 · 2331 阅读 · 0 评论 -
My Target(10,9--10,16)
下面列一个自己的目标:(10,9--10,16)1.好好备战ACM,顺便把自己的算法方面的知识系统的过一遍,马上就要国赛,难得的第一届,作为东道主,所谓万事开头难,今年一定要好好争取!!!!加油!NYIST!!!2.基础方面的知识之前学过的必须全部过一遍,代码全部要手敲一遍!!!3.每次比完赛,当时没有做出的题目,赛后一定要及时补上,补题很重要!!!4.想学知识还是原创 2015-10-09 21:10:14 · 773 阅读 · 0 评论 -
Andrew Stankevich's Contest #补题
ACdream 1210 Chinese Girls' Amusement (规律+数学)【题意】:求最大的k如果n是2m+1形式的,那么k=m就是答案;如果n是4m形式的,那么k=2m-1就是答案;如果n是4m+2形式的,那么k=2m-1就是答案。证明略,需要简单的高精度。java代码://感觉就是暴力 从n/2 开始减 ,直到互素为止,原创 2015-10-09 10:58:21 · 1398 阅读 · 0 评论 -
HDU 5073 Galaxy (2014 ACM/ICPC 鞍山赛区现场赛D题)
【题目链接】:click here~~【题目大意】:Problem DescriptionGood news for us: to release the financial pressure, the government started selling galaxies and we can buy them from now on! The first one who原创 2015-10-05 22:34:55 · 1039 阅读 · 0 评论 -
HDU 5495 LCS (并查集判环)
【题目链接】:click here~~【题目大意】:Problem DescriptionYou are given two sequence {a1,a2,...,an} and {b1,b2,...,bn}. Both sequences are permutation of {1,2,...,n}. You are going to find another原创 2015-10-04 22:29:50 · 1661 阅读 · 4 评论 -
URAL 1348 Goat in the Garden 2(点到线段的距离)
【题目链接】:click here~~【题目大意】:求某点到一条线段的最小距离与最大距离。【思路】:分析可知,最大距离一定在端点处取得。那么接下来求最小距离时,先求出垂线与线段所在直线的交点,然后判断交点在不在线段上。如果在,则最小距离为垂线段的距离,即交点到此点的距离。如果不在,则最小距离必在另一端点取得。问题转换如何判断点与线段的垂足是否在线段上,可以利用叉积方便的求出。原创 2015-10-04 20:17:37 · 1399 阅读 · 2 评论 -
HDU 3548 Enumerate the Triangles(找周长最小的三角形+优化)
【题目链接】:Click here~~【题意】:平面上有n(n【解题思路】:此题有个优化点,首先考虑直接枚举的话,是O(n^3)肯定会超时,所以要优化。接着我们考虑,判断组成三角形的条件和特殊情况,周长C=L1+L2+L3,有C> 2Li,假设Li的两端分别为点a、b,则又有Li>=| Xa-Xb |,故C> 2*| Xa-Xb |。所以先按照X坐标从小到大排序,然后当已得到的原创 2015-10-04 16:35:44 · 2029 阅读 · 0 评论 -
国赛个人训练赛 A解题报告
【比赛链接】:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=93429#overview Problem ACodeForces 526C Om Nom and Candies【题目大意】:输入五个数:C,hr,hb,wr,wb,你最多可以吃C千克的糖, 有两种糖,每种糖有两个参数,一个为重 w ,一个为欢乐度 h , 如原创 2015-10-02 18:46:13 · 1175 阅读 · 0 评论 -
POJ 1279 Art Gallery (多边形组成的内核面积)
【题目链接】:click here~~【题目大意】求多边形组成的内核面积【思路】:模板题参考上一题代码:/** Problem: POJ No.1279* Running time: 16MS* Complier: G++* Author: herongwei* Create Time: 12:27 2015/10/2 星期五*/#include #include原创 2015-10-02 12:30:58 · 995 阅读 · 0 评论 -
POJ 3130 How I Mathematician Wonder What You Are! (半平面交+多边形内核判断)
【题目链接】:click here~~【题目大意】:按顺序给出一些点。可以构成一个多边形,问多边形是否有核。【思路】:跟前一道题目是一样的。代码:/** 半平面交+多边形内核判断* Problem: POJ No.3130* Running time: 16MS* Complier: G++* Author: herongwei* Create Time: 15:34原创 2015-10-01 20:34:51 · 751 阅读 · 0 评论 -
POJ 3335 Rotating Scoreboard (半平面内核判断)
【题目链接】:click here~~ 【题目大意】:判断 一个多边形是否存在内核【思路】:参考:http://www.cnblogs.com/ka200812/archive/2012/01/20/2328316.html代码:/** 半平面内核判断* Problem: POJ No.3335* Running time: 0MS* Complier: G++* Aut原创 2015-10-01 20:15:08 · 1683 阅读 · 0 评论 -
HDU 2892 area (多边形和圆面积并--基础题)
【题目链接】:click here~~【题目大意】:Description小白最近被空军特招为飞行员,参与一项实战演习。演习的内容是轰炸某个岛屿。。。 作为一名优秀的飞行员,任务是必须要完成的,当然,凭借小白出色的操作,顺利地将炸弹投到了岛上某个位置,可是长官更关心的是,小白投掷的炸弹到底摧毁了岛上多大的区域? 岛是一个不规则的多边形,而炸弹的爆炸半径为R。原创 2015-10-01 15:45:43 · 1144 阅读 · 0 评论 -
计算几何--简单多边形与圆面积交
文章转载:click here~~求解二维空间内一个简单多边形和一个长度为R的圆公共面积。因为任意简单多边形都可以划分成若干三角形,我们可以把这个简单多边形划分成三角形后,求三角形与圆的面积交,然后在把所有三角形的解合并。由于可能有凹多边形,我们计算三角形与圆面积交时采用向量叉乘,这样得到的是一个有向面积,刚好可以把凹多边形面积正负抵消掉,最后把总面积取绝对值就行了。向翻译 2015-10-01 15:10:32 · 1819 阅读 · 0 评论 -
POJ 2785 4 Values whose Sum is 0 (折半搜索 )
【题目链接】:click here~~【题目大意】:The SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, compute how many quadruplet (a, b, c, d ) ∈ A x B x C x D are such that a +原创 2015-09-30 08:27:42 · 1413 阅读 · 0 评论 -
HDU 1025 Constructing Roads In JGShining's Kingdom (LIS 最长递增子序列)
【题目链接】:click here~~【题意】:河岸两旁有n个村庄,他们之间要互相修路,并且同一边的不互相修,在保证不交叉的情况下,最大限度的路的是多少。【思路】转化题意后,发现是求LIS,入门题训练LIS详细分析:代码:/* * Problem: HDU No.1025* Running time: 374MS * Complier: G++ * Author:原创 2015-09-28 10:41:28 · 1061 阅读 · 0 评论 -
最长上升子序列问题
最长上升子序列问题有一个长为n的数列请求出这个序列中最长的上升子序列的长度,上升子序列值的是对于任意的,都满足的子序列。N的范围决定与算法的选择1这个问题也被称为最长递增子序列(LIS)首先建立递推关系:定义dp[i]:=以为末尾的最长递增子序列的长度以结尾的上升子序列是:只包含的子序列在满足并且的以为结尾的上升序列末尾,追加后得到的子序列这二者之一,就翻译 2015-09-29 14:14:14 · 1462 阅读 · 2 评论 -
HDU 5491 The Next 构造(2015 ACM/ICPC Asia Regional Hefei Online)
【链接】click here~~【题意】:给你一个D(0≤D231),保证D的二进制中1的数量在s1和s2之间然后让你求一个最小的数,使得这个数的二进制数量大于等于s1,小于等于s2,且大于 d【思路】虽然是比赛时候的一道水题,但是开始看到的时候并没有想到好的思路,最后还是学弟强行过掉,今天突然想到了可以用lowbit来求首先看到D的范围是很大的,那么如何 构造呢?这里原创 2015-09-28 09:16:49 · 1285 阅读 · 1 评论 -
HDU 5478 Can you find it (卡常数)2015 ACM/ICPC Asia Regional Shanghai Online
【题目链接】click here~~【题目大意】;代码:/* * Problem: HDU No.5478* Running time: 3844MS * Complier: G++ * Author: javaherongwei * Create Time: 17:24 2015/9/26 星期六*/ #include #include #incl原创 2015-09-26 17:30:57 · 2321 阅读 · 0 评论 -
ZOJ Monthly, October 2011 (DP+数学专场!!!)
【比赛链接】:click here~~这套题是暑假打多校的时候拉的一次比赛,感觉题目都很有意思,所以重新拉出来总结一下。ZOJ 3549 Little Keng 【题意】:Calculate how many 0s at the end of the value below: 1n + 2n + 3n + ... + mn【思路】:数据不大直接暴力求解。代码:原创 2015-09-25 14:36:05 · 1470 阅读 · 0 评论