-
[综合] 中缀表达式转后缀并计算值
数字只能(0~9)运算符加减乘除还有括号 #include<iostream> #include<algorithm> #include<map> #include<stack> #include<string> #include<...
38
热度 -
[综合] UVa 1589 Xiangqi
花了好长时间终于AC......思路:将横竖看一看,再看看马,再上下左右走一走再判断一次 主要考虑特殊数据马能不能走,还有将可以吃旁边的 214 H22 H26 425 R35 G104 C55 R29 #include<iostream> #include<cstring&...
18
热度 -
[综合] UVA 815 Flooded!
先sort一下,在计算出相邻高度差,再依次计算蓄水量 如案例中,13*100+2*200+7*300...... #include<iostream> #include<cstring> #include<algorithm> #include<cstdi...
48
热度 -
[综合] UVA 12096 The SetStack Computer
<prename="code"class="cpp">集合中不能有相同元素 set_union,<spanstyle="font-family:Arial,Helvetica,sans-serif;">set_intersection函数用前就应该保证输入两容器内有序且无重复...
56
热度 -
[综合] I People Counting
当时没想到,现在感觉思路打开就好了 思路:每次遇到一个部分就把身体其他部分一起变为一个不可能的符号并cnt++.根据这个把相片从头到尾全部扫一遍就好。 #include<iostream> #include<cstring> usingnamespacestd; intH,...
120
热度 -
[综合] D The Lucky Week
一开始是这么想的,七天七天加,保证每次都是星期一,每次遇到1,11,21就找到了 但N有10^9,肯定会超时。那么马上打表找规律,可就是找不出规律。 看了大神的,400年是一个周期,有2058个LuckyWeek。找到规律后马上就AC了 #include<iostream> #incl...
42
热度 -
[综合] UVa 572 Oil Deposits
遇到一个@就把相连的@全变成‘*’,再cnt++就好 #include<iostream> #include<cstdio> #include<cstring> usingnamespacestd; charoil[105][105]; intm,n; void...
11
热度 -
[综合] UVA 816 Abbott's Revenge
好复杂TAT 主要是BFS #include<iostream> #include<vector> #include<queue> #include<cstdio> #include<cstring> usingnamespacestd;...
101
热度 -
[综合] UVA 10305 Ordering Tasks
欧拉回路:每个节点走到最深再倒序输出 #include<iostream> #include<vector> #include<queue> #include<cstdio> #include<cstring> usingnamespac...
87
热度 -
52
热度 -
[综合] UVa 439 Knight Moves
BFS可以想成树的层序遍历,关键是1)判重,表示偷懒用set判重; 2)判断搜索到第几层,用front表示当前层数,rear表示上一层层数。 #include<iostream> #include<cstring> #include<set> #include&...
99
热度 -
[综合] UVa 1600 Patrol Robot[待AC]
front表示当前搜索层,rear表示上一层 d[]表示第几层,b[]表示穿越的障碍数 #include<iostream> #include<cstring> #include<set> #include<cstdio> #include<q...
43
热度 -
[综合] UVa 1599 Ideal Path[待AC]
dix[]保存到终点的最短权值,d[]保存到终点的最短边长 结构体保存边和权值,二维数组太大用不了; 一直RuntimeError..... #include<iostream> #include<cstring> #include<set> #include&...
70
热度 -
[综合] UVa 1343 The Rotation Game(IDA*)
主要是设计乐观估计函数来减枝 假设中心区域有6个2,2个3,那肯定是消掉3最好,毕竟就两个。 那么理想情况下,旋转一次就能把一个3变成2,那么最少操作2次。 我们用h()来计算最少还要操作几次,其原理是假设中心区域都放1或2或3,返回至少操作的次数中最小的数 maxd是假设最多能操作的数; d是已经...
78
热度 -
[综合] UVa 1601 The morning after Halloween(单向BFS+双向BFS)
//测试数据 /* 552 ##### #A#B# ## #b#a# ##### 1643 ################ ############## #ABCcba# ################ 16163 ################ ######## ######c# #####...
71
热度 -
93
热度 -
[综合] UVA 11134 Fabled Rooks(贪心法,区间与选点问题)
x轴,y轴不相关,所以分开考虑 贪心法可以这样思考,不同于定区间选点,而是定点选区间,那么怎么对区间排序最优? 假设前提是从1开始取点放,对于其中x这个点,假设有很多区间[a,b]包含x这个点,那么对于那么多的区间我们只要选取b最小的就好,注意是在包含x的区间中选!! 但为了加快选中的概率,再加一条...
105
热度 -
[综合] UVa UVA1606 Amphiphilic Carbon Molecules
1.任意枚举两个点计算两边黑点加白点最大值 2.任选一个基准点,引一根直线绕着转,计算两边黑点加白点最大值; 对于2,再优化一下,将其他点较基准点的极角排序: 一个小技巧:将黑点关于基准点对称就相当于白点了,于是只要计算直线一边的点的数目最大值就好了 注:当中遇到了一个函数atan2:正表示从X轴逆...
49
热度 -
[综合] dp题目思路理解 (嵌套镶嵌问题DAG)
描述 有n个矩形,每个矩形可以用a,b来描述,表示长和宽。矩形X(a,b)可以嵌套在矩形Y(c,d)中当且仅当a<c,b<d或者b<c,a<d(相当于旋转X90度)。例如(1,5)可以嵌套在(6,2)内,但不能嵌套在(3,4)中。你的任务是选出尽可能多的矩形排成一行,使得除...
59
热度 -
43
热度