摘要:
题目链接:http://codeforces.com/contest/803/problem/E 题意:看比赛,W是赢,L是输,D是平,?不知道。现在一个人希望输和赢的数量差的绝对值为k,且比赛期间输赢数小于k,问可行方案。 dp(i,j)代表比赛i场W比L多j的数量,W的时候从dp(i-1,j-1 阅读全文
摘要:
题目链接:http://codeforces.com/contest/803/problem/D 题意:字符串希望拆分成不大于k段,问如何拆分,使得每一行的字符串最短。其中有两个条件:空格或者连字符“-”允许换行。 二分每行最短的长度,检查的时候扫描i的字符串,固定两头,从右往左扫直到能换行,这样找 阅读全文
摘要:
题目链接:http://codeforces.com/contest/803/problem/A 题意:n*n的矩阵,可以写k个1,问字典序最大的对称阵。 直接从左上到右下插,遇到对角线则k--,否则都是k-=2,注意-=2的时候判断k是否>=2。 阅读全文
摘要:
题目链接:http://codeforces.com/contest/803/problem/B 题意:给n个数,问每个数和最近的0的位置的最短距离。 正着来一遍,倒着来一遍。 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5869 题意:n个数,q次询问,问区间内gcd不同值的个数。 和dquery那道题一样,也是离线的做法。按照查询的r从小到大排序,每插入一个数字ai,则更新一次gcd,总是把gcd出现向后移动,这样可以满 阅读全文
摘要:
题目链接:https://vjudge.net/problem/SPOJ-DQUERY 题意:给定数列,q次询问,问区间内不同数字的个数。 可以用主席树,但是还有更好写的办法。 离线存下所有的询问,按照询问右端点从小到大排序。 用树状数组标记“某个值在区间[1,r]中出现的最后的位置”。这样可以将r 阅读全文