cf
文章平均质量分 51
Weiguang_123
这个作者很懒,什么都没留下…
展开
-
cf div2_123_e(并查集)
root(v)指向一节点的边权=depth(v)+x;求生成树的总边长。 用并查集的方法,用fa[x]记录x的父节点,dist[x]表示x到当前根的长度。 PS:int weigh=((x+dist[v])%P+P)%P;//新边 //新边为啥要这样取摸才能过呢,折腾了半天,还不懂是什么原因啊,,有时间去请教大牛们,路过的求你帮偶解答一下。 #include #原创 2012-06-27 09:06:13 · 764 阅读 · 0 评论 -
cf div2_199_b(水题也注意)
给出巨形0~w,0~h.在里面找出四个顶点为整数的菱形个数。 看到了题就毫不犹豫的去枚举,悲剧了吧。都没看数据范围,我真傻! #include using namespace std; long long wg(long long w, long long h) { long long countw = 0; long long counth = 0;原创 2012-06-26 16:18:20 · 1455 阅读 · 0 评论 -
cf div2_123_c
题意:原串中的最后一个数可以移到串钱的任何位置,问移动最少多少个可以变成目标串。 想了N久,思路是:原串中如果位置在目标串中颠倒了,则后一个必须动,就会引起所有后面的都要动。所以只要中出在目标串中的升序的个数。用n去减就OK了。 #include using namespace std; int a[200002]; int b[200002]; int main原创 2012-06-26 20:31:18 · 637 阅读 · 0 评论 -
div2_123_D
求s(X)所组成的折线出现的角。 思路:两直线的所成的角可以转化为他们与X轴的焦点,这很重要,代码就很简单了,但用long double 才能过啊,,用set.原创 2012-06-27 09:16:50 · 1191 阅读 · 0 评论 -
cf div_124_a(简单博弈)
唉,最贱简单的博弈啊,一个矩形(a,b)里轮流放圆(r),谁不能放的谁输。 所以只要第一个人能放下,并且它第一次放在矩形中心位置,然后始终跟第二个人对称的放就能赢。至于什么是必胜态和必败态还不懂。 #include using namespace std; int main() { int a,b,r; cin>>a>>b>>r; if(2*原创 2012-06-26 17:15:36 · 3420 阅读 · 0 评论