Bestcoder
Solved Problems |
---|
Numbers |
Game |
Subtrees |
Numbers
可能需要两个特判?
1 | /** |
Game
各种分类讨论,但就是要写好最边缘的特判。。。
1 | /** |
Subtrees
有些查找行为显然拖慢时间以致TLE。。。
有一个重要优化是从小到大枚举子树大小而不是相反方向;
1 | /** |
Solved Problems |
---|
Numbers |
Game |
Subtrees |
可能需要两个特判?
1 | /** |
各种分类讨论,但就是要写好最边缘的特判。。。
1 | /** |
有些查找行为显然拖慢时间以致TLE。。。
有一个重要优化是从小到大枚举子树大小而不是相反方向;
1 | /** |
Solved Problems |
---|
SDOI |
Reorder the Books |
1 | /** |
思索再三,竟然连充分条件、必要条件都没找准,
1 | /** Oct 13, 2015 8:55:41 PM |
观察、归纳后可以优化到最简,
1 | public class Main { |
玩过MC无压力
1 | /** Sep 19, 2015 7:12:36 PM |
第一时间想到的是容斥,而后才逐渐醒悟过来是DP。。。
另外mod的遗漏又错了一发。。。
1 | /** Sep 19, 2015 7:24:54 PM |
没有总结好Nim游戏的规律啊。。。超简单的代码
1 | /** Sep 5, 2015 7:07:52 PM |
1 | /** Sep 5, 2015 7:30:23 PM |
⬆️当时想太多了啊,何必把找到的因子全存进vector啊,白白吃了个RE……
(测试还发现HDU尚不支持Vector的sort方法,还未支持到Java7?)
1 | /** Sep 8, 2015 16:02:23 PM |
1 | /** Sep 5, 2015 8:05:33 PM |
不明不白地送了个WA,没有考虑好数列中值为0的项。
这题不是暑假多校才做过的么?
迟到了半小时开打,不然rank还可以更好看点……
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
1 | /** Aug 29, 2015 7:39:29 PM |
如果点1与点n直接相连,那么就是距离最短了。
要同时满足不同与相似,就是要求结点数相等,各结点到树根1的距离分别相等(即深度分别相同),且存在父节点不同的结点。
可以说就是判断同一深度上的结点互换后是否能得到新的结构。
若有某一深度上的结点数多于一个,那么大概可以通过同层互换获得新的结构。
1 | /** Aug 29, 2015 7:59:14 PM |
然而错了。
适当地列举一些情况,发现若树的深度仅有2,那么它始终是特殊的。
可是加上这一判断仍不够。
进一步的举例发现,若树上非最底层有某一层结点多于一个,就能变换形成新结构
1 | /** Aug 29, 2015 7:59:14 PM |
这与题解中所说的“一棵树是独特的当且仅当任意处于每一个深度的点数是1 1 1 1 … 1 1 x”相符(我个人将这种形态称作“呈扫帚状”)
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)
Problem Description
Victor has a machine. When the machine starts up, it will pop out a ball immediately. After that, the machine will pop out a ball every w seconds. However, the machine has some flaws, every time after x seconds of process the machine has to turn off for y seconds for maintenance work. At the second the machine will be shut down, it may pop out a ball. And while it’s off, the machine will pop out no ball before the machine restart.
Now, at the 0 second, the machine opens for the first time. Victor wants to know when the n-th ball will be popped out. Could you tell him?Input
The input contains several test cases, at most 100 cases.
Each line has four integers x, y, w and n. Their meanings are shown above。
$ 1\leq x,y,w,n\leq 100 $ .Output
For each test case, you should output a line contains a number indicates the time when the n-th ball will be popped out.Sample Input
2 3 3 3
98 76 54 32
10 9 8 100Sample Output
10
2664
939
n-1的问题,自己刚开始出了点差错:
1 | /** Aug 22, 2015 7:03:37 PM |
WA过一发,因为忽视了金额的分布范围。
1 | /** |
明显搞复杂了,做了一回出题人眼中的“火星人”T_T
平面上的整点就是无法构成正三角形、正五边形、正六边形,没这点见识就只有瞎弄。。。
简化到这个地步,正方形的判断就应该仔细点了吧?四条边及两对角线的长度比较都写上,
1 | /** |
多么有教育意义的猜公式,猜不出就别偏执了。。。
f[i]=s[i-3]+1,s[i]=s[i-1]+f[i],…
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
1 | /** |
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Problem Description
Can we divided a given string S into three nonempty palindromes?Input
First line contains a single integer $ T \leq 20 $ which denotes the number of test cases.
For each test case , there is an single line contains a string S which only consist of lowercase English letters. $ 1\leq |s| \leq 20000 $Output
For each case, output the “Yes” or “No” in a single line.Sample Input
2
abc
abaadadaSample Output
Yes
No
赛时的Hash做法:
1 | /** |
首次尝试去hack别人不成,还被人黑了,立马TLE
题解介绍的多种方法中,个人认为二分+hash代码量较少,如何实现?
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
1 | /** |
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
用Trie做查询时,往死胡同里钻而且根本停不下来,啊啊啊啊……
1 |
|
这里的枚举倒是简洁得出奇。
Time Limit: 2000/2000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)
下意识地做了贪心,果然被hack
Protest一时爽,final test全爆零 QwQ
1 | out.println(str.matches(".*w.*y.*h.*")||str.matches(".*v{2,}.*y.*h.*")?"Yes":"No"); |
偷懒着用正则表达式,华丽地TLE……
后来就醉了一样的胡乱的写了个匹配也不太行……
1 | import java.io.*; |
1 |
|
事实证明这并不是二分图匹配;并没有什么典型的算法让两个集合中的一个最大……
用DFS或BFS都可实现填色。