摘要: 题目: 这是一道很神奇的题目,做法非常巧妙。巧妙在题目要求n个数字,而且正好要求和为n的倍数。 思路:用sum[i]表示前i个数字的和%n。得到sum[ 1-N ]共N个数字。 N个数字对N取模,每个数字都在0-( N-1 )之间。 可能出现两种情况 1:有一个数字等于0。(都不相等) 2:至少有两 阅读全文
posted @ 2017-08-22 23:49 ninding 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 题目: 思路:把'0'当成数字-1,'1'当成数字1,求前缀和,用map更新当前前缀和最早出现的位置。(用map而不用数组是因为可能会出现负数) 当前缀和的值之前出现过,比如i = 10时,sum = 0;j = 50时,sum = 0; 更新ans = max(ans,j-i); 下面是一个例子: 阅读全文
posted @ 2017-08-22 20:15 ninding 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 题目: 题目原文链接:http://codeforces.com/contest/845/problem/C 题意:现在我们有一个电视清单,有两个电视,电视清单上有每一个节目的开始时间和结束时间。 电视不能接连不间断的播放,例如TV1播放完1-2点的节目后不能接着播放2-3点的电视,除非在TV2上播 阅读全文
posted @ 2017-08-22 11:31 ninding 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 题目: 题意:输入一个整数n,接着输入2*n个数字,代表2*n个选手的实力。 实力值大的选手可以赢实力值小的选手,实力值相同则都有可能赢。 叫你把这2*n个选手分成2个有n个选手的队伍。 问你是否有一种分法让一个队伍必定会赢。 分析:就像田忌赛马,我们要让第一个队更多的选手赢,全赢输出YES,否则输 阅读全文
posted @ 2017-08-22 11:17 ninding 阅读(216) 评论(0) 推荐(0) 编辑