摘要:
题意:一袋硬币两人分,要么公平分,要么不公平,如果能公平分,输出0,否则输出分成两半的最小差距。思路:将提供的整袋钱的总价取一半来进行01背包,如果能分出出来,就是最佳分法。否则背包容量为一半总价的包能装下的硬币总值就是其中一个人能分得的最多的钱了,总余下的钱减去这包硬币总值。(只需要稍微考虑一下总... 阅读全文
摘要:
问题:去珠宝店抢饰品,给出饰品种数n,能带走的重量m,以及每种饰品的重量w与价值v。求能带走的最大量。思路:常规01背包。 1 #include 2 using namespace std; 3 const int N=100000; 4 int w[N], v[N],dp[N]; 5 6 vo... 阅读全文
摘要:
证明看这http://hihocoder.com/contest/hiho44/problem/1思路: 设 sg=a[1]^a[2]^...a[n],若sg=0,则先手Alice必败,否则必赢。 所有值的异或和为0就先手必败(仅需记住这句就够应付此类题了),否则先手胜。 1 #include ... 阅读全文
摘要:
题意: 有n张CD(n 2 #include 3 #include 4 using namespace std; 5 const int N=30; 6 int track[N]; 7 int dp[N][100000]; 8 bool path[N][100000]; 9 10 void ... 阅读全文