![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
TopCoder
文章平均质量分 67
MoorLi
if else工程师
展开
-
TopCoder SRM 612 DIV 1 450 SpecialCells
题意: A选中二维平面上一些点,将x和y分别排序后发给B,B据此猜测原来的点集,问至少能猜对几个?当然一次猜测中同一个点不会出现两次。 题解: 费用流,所有的x和所有的y连边,若(xi,yj)并不是原来的点,则费用为0,否则费用为1 //import java.io.File; //import java.io.FileInputStream; import java.io.Fil原创 2014-03-19 20:41:55 · 650 阅读 · 0 评论 -
TopCoder SRM 612 DIV1 250 EmoticonsDiv1
题意: A打了一个笑脸表情,每次操作有以下三种: 1、复制当前全部表情 2、粘贴 3、删除一个表情 问要到达所需要的表情个数至少需要多少次 题解: 由于数不大,DP即可,dp[i][j]表示剪贴板里有i个表情,总共有j个表情的最小次数 import java.util.*; import java.math.*; import java.util.ArrayList; c原创 2014-03-19 20:56:05 · 930 阅读 · 0 评论 -
TopCoder SRM 612 DIV1 900
题意: n个人坐成一圈,每个人绑起一只手,用L和R表示。如果一个R坐在L左边则会产生一个冲突。每次操作可将相邻两个人交换位置,求操作至冲突最少所需的最少次数。 题解: 如果只有L或只有R,则无冲突,否则冲突最小时是L连成一片,R连成一片,冲突为1. 可以单独考虑将L挪到一块去。枚举位置l,表示所有的L都向l挪,那么肯定一部分往后,一部分往前最优 可以找到一个位置r,l~r间的L往后,其它原创 2014-03-19 21:04:30 · 829 阅读 · 0 评论 -
TopCoder SRM 144 DIV1 BinaryCode
题意: 一个01串S1,每位与邻数相加,得到新的串S2. 现在给你S2,求对应S1的一个字符分别为‘0’和‘1‘时S1是否存在 题解: 模拟,直接做就可以了 import java.util.*; public class BinaryCode { String getStr(String str,int start) { char []s=str.toCharArray原创 2014-03-22 19:54:21 · 494 阅读 · 0 评论 -
TopCoder SRM 512 DIV1 PickAndDelete
题意: A有一个序列T,B有一个序列S,都包含N个数。 第i轮A要在序列T中找到一个不大于S[i]的数并将其删去。 若刚好能玩N轮,则A获胜。 求使得A获胜的满足要求的序列T的个数。 题解: 因为N很小,只有200,所以可以用DP。 将S按升序排序,然后逐步构造T。 用dp[i][j]表示有j个最大数不超过S[i]的序列个数,注意这里其实不是dp[i][j]=pow(S[i原创 2014-03-25 23:19:56 · 534 阅读 · 0 评论 -
TopCoder SRM 144 DIV1 550 Lottery
题意: 用四个参数描述了彩票的规则:数字范围,数字个数,是否要按递增顺序,是否数字要唯一。 题解: 模拟…… import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.util.*原创 2014-03-25 16:55:42 · 458 阅读 · 0 评论 -
TopCoder SRM 512 DIV1 MysteriousRestaurant
题意: 一家餐馆开张N天,有M道菜,每天每道菜的价格都在变化,而且如果某天你点了某道菜,下周这一天也要点这道菜,否则你就进黑名单了……请问对给定的预算最多能吃几天? 题解: 二分能吃的天数K,然后枚举第一周每天点的菜,每次找在K天里总花费最小的,看能不能满足。 因为数据范围小,懒得预处理了,每次都重新扫一遍…… import java.util.*; public class原创 2014-03-25 23:26:01 · 587 阅读 · 0 评论