This is my blog.
今天又犯了一个老错误
早上不怎么想起床
做了一套四级卷子
为了吃饭(居然是这个理由)
出门自习了
看到一道好题
嗯 思维很重要
我就不写什么废话了,直接说这题的精髓吧!
小记
- 反面思考
求体积,即总体积-空气体积。需要外围加一圈。这个思路和UVA-1103是相同的。感觉这个想法可以用在很多图的问题中,可以积累下来。 - 离散化
由于个数n很小,而x,y,z的差距可能很大,这时候离散化可以减少空间。而因为在这题中我们会用到bfs,这样就会超时了。 - floodfill
这个搜了一下貌似不是算法,其实也就是结合了bfs,发现一般bfs比dfs更优(就是一种感觉,以后我写题估计会先考虑使用bfs。虽然感觉dfs更好想。 - 模块化
等会放出我觉得很好的代码,很清晰。而且模块化,功能化。值得学习。 - unique
在STL中unique函数是一个去重函数, unique的功能是去除相邻的重复元素(只保留一个),其实它并不真正把重复的元素删除,是把重复的元素移到后面去了,然后依然保存到了原数组中,然后 返回去重后最后一个元素的地址,因为unique去除的是相邻的重复元素,所以一般用之前都会要排一下序。 - 结构体1234567struct Point{int x,y,z;Point(int _x,int _y,int _z){x=_x;y=_y;z=_z;}Point(){}}p[maxn];
其实这一段代码我不是第一次接触到了,但还是想拿上来。很好用,很常用。
- 左闭右开填格子
AC代码代码源处
|
|
其他
多组数据的时候一定要考虑很多事情,比如初始化,比如模块化,比如必须读入完后才可以输出……
转载请注明出处,谢谢。
愿 我是你的小太阳