首页 > 代码库 > 【解题报告】2014ACM/ICPC上海赛区现场赛B
【解题报告】2014ACM/ICPC上海赛区现场赛B
唉 谷歌出的神题,差点爆零了。。。三小时终于A掉 B题
题目大概是说从左上角的点出发,经过某路线最后回到原点,求每个格子被路线包含的圈数的平方和。
首先可以知道,对于某个格子来说,从该格子的任意一个方向划一条射线,路径穿过该射线的次数就等于该格子被包含的圈数(正穿和反穿抵消)。
然后开一个100w的数组保存每个格子的上面那条线被向右走过的次数。模拟出路径,然后填满数组。求格子的圈数就等于这个格子和它上面所有格子里面填的值的和。然后全部平方加起来就可以了。
有一个点就是可以把高和宽中较短的那一条翻转到上边变成宽,使得模拟路径填数组的时候不会超时。
。。感觉写的不太好,不过自己想一想应该没问题吧,不难的题。
【解题报告】2014ACM/ICPC上海赛区现场赛B
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。