人民币的构造 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit Status 我们都知道人民币的面值是1.2.5.10,为什么是这个数值呢,我们分析了下发现,从1−10的每个数字都可以由每种面值选出至多一张通过加法和减法(找钱)来构成,(比如:1+2=3,5−1=4,5+1=6,5+2=7,1+2+5=8,10−1=9) 但是实际上,我们只需要1.2.7三种面值就可以组成1…
题目链接:http://acm.uestc.edu.cn/#/problem/show/1344 区间加等差数列本质上就是区间修改区间查询,本来想用线段树做,结果这个题就是卡空间和时间……不得已学了区间修改区间查询的树状数组. #include<bits/stdc++.h> using namespace std; ; +; int a[maxn]; int N; int tree[maxn]; int tree2[maxn]; int lowbit(int x) { return x&…
Description 昊昊喜欢运动 他N天内会参加M种运动(每种运动用一个[1,m]的整数表示) 现在有Q个操作,操作描述如下 昊昊把第l天到第r天的运动全部换成了x(x∈[1,m]) 问昊昊第l天到第r天参加了多少种不同的运动 Input 输入两个数N, M (1≤N≤105, 1≤M≤100); 输入N个数ai(ai∈[1,m])表示在第i天昊昊做了第ai类型的运动; 输入一个数Q(1≤Q≤105); 输入Q行 每行描述以下两种操作 形如M l r x,表示昊昊把第l天到第r天的运动全部换…
宝贵资源 题目连接: http://acm.uestc.edu.cn/#/problem/show/1265 题意 平面上给n个点(n<=1000),要求找一个面积最小的正方形,将所有的点都囊括进去. 要求正方形的边必须平行于坐标轴. 题解: 对于这道题,我们可以首先找一个满足题意的,并且面积是最小的矩形. 假设矩形的长为L,宽为W,那么很显然: L = (MaxX - MinX) W = (MaxY - MinY) MaxX,MaxY 指题目中输入的最大横.纵坐标的值,MinX,MinY 指题…
人民币的构造 Time Limit: 1000MS   Memory Limit: 65535KB   64bit IO Format: %lld & %llu Submit Status Description 我们都知道人民币的面值是$1.2.5.10$,为什么是这个数值呢,我们分析了下发现,从$1-10$的每个数字都可以由每种面值选出至多一张通过加法和减法(找钱)来构成,(比如:$1+2=3,5-1=4,5+1=6,5+2=7,1+2+5=8,10-1=9$) 但是实际上,我们只需要$1.…
在Guava中新增了一个新的类型Range,从名字就可以了解到,这个是和区间有关的数据结构.从Google官方文档可以得到定义:Range定义了连续跨度的范围边界,这个连续跨度是一个可以比较的类型(Comparable type).比如1到100之间的整型数据. 在数学里面的范围是有边界和无边界之分的:同样,在Guava中也有这个说法.如果这个范围是有边界的,那么这个范围又可以分为包括开集(不包括端点)和闭集(包括端点):如果是无解的可以用+∞表示.如果枚举的话,一共有九种范围表示: Guava…
转载:http://www.cnblogs.com/peida/p/Guava_ImmutableCollections.html Table: 当我们需要多个索引的数据结构的时候,通常情况下,我们只能用这种丑陋的Map<FirstName, Map<LastName, Person>>来实现.为此Guava提供了一个新的集合类型-Table集合类型,来支持这种数据结构的使用场景.Table支持"row"和"column",而且提供多种视图.…
范例 List scores; Iterable belowMedian =Iterables.filter(scores,Range.lessThan(median)); ... Range validGrades = Range.closed(1, 12); for(int grade : ContiguousSet.create(validGrades, DiscreteDomain.integers())) { ... } 简介 区间,有时也称为范围,是特定域中的凸性(非正式说法为连续的…
题意:求解存在最大差值小于给定K值的所有区间段. 输入: T(测试数据) n(数组个数)K(给定区间值的范围) ai...(数组值) 输出: ss(所有满足符合条件的区间段) 思路:二分+ST算法,首先利用ST算法初始化数组,找出区间段最大与最小值,然后直接二分查询数组,并判断给定区间最值是否满 足小于K的情况,所以在遍历完一次数组后,可以累加得到符合条件的所有区间和. #include<stdio.h> #include<string.h> #include<math.h&…
上次补题好像把两次训练混在一起了,总之先按时间顺序补完这一次|ू・ω・` ) HDU-6301 不会的东西不能逃避.jpg 红小豆非常讨厌构造题,因为非常不会,并且非常逃避学习这类题,因为总也搞不清楚. 这次红小豆搞清楚了一道构造区间数字不重复数列的题. 首先,由于字典序最小,即每次可以直接提取可能值中最小值,且不重复,又可以插入删除,所以我们获得了set(噔噔噔)用ta来装可以填的数.接着,我们考虑大区间包着小区间的情况,显然大区间满足条件时小区间必然满足,所以我们这时可以把小区间视为大区间(…