Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
只考虑新加进来的点和其他点连线或不连线的情况。
加法原理和乘法原理。

题目 83 圆弦 AAAAAAAAAA
2012-10-25 08:52:29
Gravatar
QhelDIV
积分:2339
提交:638 / 1737
这个题,可以有N种方法来求
1.暴力O(N^2) 不说了...
2.分块O(N*sqrt(N)) 加一个小优化就可以过最极限数据。
3.记忆化剪枝O(???) 可以过,时间复杂度在O(N^2)~O(N),不知道是否有极限数据针对。
4.线段树O(N*log2(N)) 轻松AC
5.单调堆栈O(N) 秒杀

Gravatar
Makazeu
积分:3005
提交:780 / 1516
讀題都讀了半天啊。。。語文題啊有木有。。

Gravatar
Makazeu
积分:3005
提交:780 / 1516
為了聯盟和部落的友誼!

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
哦!用滚动数组,然后输入的数据读到哪里呢?

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
DFS+剪枝,我累啊,
short到底来也没改回bool

Gravatar
Xiaohao
积分:7
提交:1 / 3
我是个OI初学者。。。只会默默写引水入城。。

Gravatar
苏轼
积分:1621
提交:460 / 1205
可以不用滚动数组。

Gravatar
王者自由
积分:2262
提交:482 / 780
我搞不明白了怎么 INF 设置的不一样结果都不一样……
这是人干的事儿么

题目 535 工程规划 AAAAAAAAA
2012-10-24 15:21:52
Gravatar
feng
积分:897
提交:139 / 331
贪心90的路过。。。很简单很简答的贪心。。。

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
本题启发:
for (i=1;i<=n-1;i++)耗费时间>
for (i=1;i<n;i++)耗费时间>
for (i=n-1;i>=1;i--)耗费时间

题目 1207 三角形牧场
2012-10-24 14:35:53
Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
状态f[i][j][k]=0or1
前i根木棒能不能保证
拼成长j的边和长k的边
其中实际运算中[i]为虚位,可省略,但省略时需注意产生新情况的顺序:从后往前,即让j和k从大到小变化。
最后用方程产生的情况一一求面积

Gravatar
天下第一的吃货殿下
积分:234
提交:79 / 206
写题不能快啊,花了10分钟写的全WA,检查2分钟→10分,又检查2分钟→AC,悲剧囧

Gravatar
QhelDIV
积分:2339
提交:638 / 1737
总是交错程序......

Gravatar
天下第一的吃货殿下
积分:234
提交:79 / 206
只有简单对比大丈夫?

题目 1208 分组问题
2012-10-24 12:37:38
Gravatar
Makazeu
积分:3005
提交:780 / 1516
爲了艾澤拉斯!

Gravatar
lucifer
积分:196
提交:66 / 175
我2B了。。这么简单想了好久。。

Gravatar
Makazeu
积分:3005
提交:780 / 1516
膜拜写出翔

Gravatar
Truth.Cirno
积分:1591
提交:557 / 1253
单调堆栈撸过

Gravatar
白乐水
积分:21
提交:9 / 28
法一:单调栈预处理然后枚举,针对n很大但单调长度很短的数据增加优化(可行的最大长度(即枚举时只枚举到该点之后的最大数,如果还有坑数据,再预处理该段长度,然后枚举时判断是否需要枚举(如果最长长度都小于ans还枚举干嘛)))
法二 :先用st或线段树求出区间最大和最小,然后深搜或者广搜都行,推荐深搜,好写.每次搜加两个关键字,分别为区间的左端点l和右端点r,然后用区间最大最小求出他们之间的最大值和最小值的下标ml,mr.如果mr>ml说明区间合法,维护ans,如果ml>=mr说明区间不合法,需要交换.最后就是将区间裂成(l,ml)(ml+1,mr-1)(mr,r),继续搜.
法三:我知道一定有正解,本人太弱想不出。。。