Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:我认为这样可以解决这个问题,让大家看看,能否这样实现??In Reply To:我认为这样可以解决这个问题,让大家看看,能否这样实现?? Posted by:hnie_5_1 at 2008-09-29 17:38:40 > 刚刚突然想到了一个关于这个问题的,我自认为是比较好的解法: > 我们就可以把这个问题看成是一个就是关于相邻数是否同号的问题, > 当当相邻两相邻数同号(同正同负时)我们就可以把这一组数据从表中去掉(编程时采用指针双向链表)如此重复(也不算重复,当我们去掉一组数据时,只要用它下一节点和它的前一结点比较就可以了)直到只剩一组数据(最终将只剩一正一负的一组数据)则表示可以解开。 > 具体实现过程: > 例如:-1 +2 -3 +4 +5 -6 +1 -2 +4 +3 -5 +6 0(假设此式正确,在此只做一个演示) > 第一步:-1 +2 -3(+4 +5)-6 +1 -2 +4 +3 -5 +6 0 括号中表去掉部分 > 第二步:-1 +2(-3 +4 +5 -6 )+1 -2 +4 +3 -5 +6 0 > 第三步:-1(+2 -3 +4 +5 -6 +1 )-2 +4 +3 -5 +6 0 > 第四步(-1 +2 -3 +4 +5 -6 +1 -2)+4 +3 -5 +6 0 > 第五步(-1 +2 -3 +4 +5 -6 +1 -2 +4 +3)-5 +6 0 > 最后只剩一组数据不同号的数据-5和+6因此,此绳可解开. > > > http://ai.pku.edu.cn/course/c++/ Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator