ACM
2017
zoj 3606 Lazy Salesgirl (线段树,单点更新,区间合并)
zoj3606题目链接
题意:有个小女孩卖火柴,有n个人会来买,分别在时间t[i],以价格p[i],买的火柴个数为1+(k-1)%3,其中k为这是小女孩第几次卖火柴。 如果有大于w的时间没人来买火柴,小女孩就会睡着。小女孩睡着后如果有人来买火柴,那小女孩就会醒过来,但是不会卖给这个人火柴。现在问使营业额最大的基础上最小的时间间隔w。
hdu 4288 Coder (离散化, 线段树,单点更新,区间合并)
题目链接
题意:n(1E5)个操作,分为三种,add x表示将x加到集合中(保证集合中之前没有x),del x表示从集合中删掉x(保证集合中一定右x),sum表示求集合中所有元素按从小到大排列后,所有的下标中满足i%5=3的a[i]的和。1=<x<=1E9
codeforces 855 B. Marvolo Gaunt's Ring (前缀最大,dp)
题目链接
题意:给出n,p,q,r,以及n(1E5)个数,所有数的范围都是[-1E9,1E9],现在问p_a[i]+q_a[j]+r*a[k]的最大值,满足1<=i<=j<=k<=n
codeforces edu #29 E. Turn Off The TV (思维,乱搞)
题目链接
题意:有若干线段,给出起点和终点,问是否有一个线段是冗余的。冗余的意思是说,对于该线段所覆盖的所有整数点,没有该线段,也能被其他一个或者多个线段覆盖到。如果有,输出任意一个冗余线段即可。
Codeforces eductional round 29
比赛链接
10个月没写题了,菜啊。进行一点恢复性训练好了。
A: 给一个数,可以在填写若干(或者0)个前缀0,问能否变成回文数。
leetcode 146. LRU Cache(list+unordered_map)
请实现最近最少使用缓存(Least Recently Used (LRU) cache)类,需要支持 get, set,操作。 get 操作,给出 key,获取到相应的 value (value 为非负数),如果不存在返回-1, 如果存在此 key 算作被访问过。 set 操作,设置 key,如果 key 存在则覆盖之前的 value (此时相当于访问过一次)。 如果 key 不存在,需要进行插入操作,如果此时已经 key 的数量已经到达 capacity, 这样需要淘汰掉最近最少使用(也就是上次被使用的时间距离现在最久的)的那 一项。
codeforces #425 D. Misha, Grisha and Underground (dfs+rmq在线求LCA,讨论了一年)
题目链接
题意: # 给出一棵树,以及三个点(可能重合),问两两组成的3条路径中,哪2条路径重合部分最长。
codeforces #425 B. Petya and Exam (暴力)
·3 分钟
题目链接
题意: # 给出由小写字母,’?‘和’*‘组成的字符串s,仅由小写字母组成的字符串t,问按照规则s能否变成t.
hdu 2815 Mod Tree (扩展BSGS算法)
题意:k^D=n(%p),求最小的D (1<=K, P, N<=10^9)
思路:出题人英文水平捉鸡。。。。
BZOJ 2480: Spoj3105 Mod (扩展BSGS算法,模板)
Description # 已知数a,p,b,求满足a^x≡b(mod p)的最小自然数x。
poj 2417 Discrete Logging (BSGS算法)
题目链接
题意:
Given a prime P, 2 <= P < 231, an integer B, 2 <= B < P, and an integer N, 1 <= N < P, compute the discrete logarithm of N, base B, modulo P. That is, find an integer L such that BL == N (mod P)
codeforces #413 C. Fountains (BIT维护前缀max)
题目链接
题意:有2种货币,分别为C和D.给出n种资源的代价和美丽度,每种资源只能用其中一种资源购买。现在拥有货币C的数量是c,拥有货币D的数量是d.然后恰好买2个资源,问最大美丽度,不能的话输出0.
codeforces #413 B T-shirt buying (贪心)
题目链接
题意:有n个T恤,每个价格都不同,有三种颜色,分别用1,2,3表示,每件T恤给出前xiong和后背的颜色。现在有m个顾客排成一队,对于每个顾客,给出他喜欢的颜色,只要一个T恤的前xiong或者后背的颜色之一满足该颜色即可。顾客总希望买符合他喜欢颜色的T恤中价格最低的。现在问每个顾客买到的T恤的价格,如果某个顾客没有买T恤,输出-1
codeforces #413 A. Carrot Cakes (模拟)
题目链接
题意:初始有一个锅,每t分钟可以做好k个饼,现在需要N个饼。还可以另外建一个锅,花费d时间,建好以后两个锅可以并行烙饼。问是否应该建锅?(以期减少烙饼时间)
leetcode162. Find Peak Element (O(lgn)复杂度寻找峰值)
·1 分钟
A peak element is an element that is greater than its neighbors.
Given an input array where num[i] ≠ num[i+1], find a peak element and return its index.
The array may contain multiple peaks, in that case return the index to any one of the peaks is fine.