PAT T1001. Battle Over Cities - Hard Version (35)
来源:互联网 发布:淘宝剁手党段子 编辑:程序博客网 时间:2024/06/05 08:49
#e9015584e6a44b14988f13e2298bcbf9import sys as O0O0OO00OOOOOO0O0 inf =0x3fffffff class Sume : def __init__ (O00OOO000O0O00OO0 ,OOO00OO0OOO0O0O00 ,OOO00000O0OOO0O0O ,OO00O0OOOO0O0OOOO ,O0OO0O000O0O00OOO ): O00OOO000O0O00OO0 .u =OOO00OO0OOO0O0O00 O00OOO000O0O00OO0 .v =OOO00000O0OOO0O0O O00OOO000O0O00OO0 .w =OO00O0OOOO0O0OOOO O00OOO000O0O00OO0 .st =O0OO0O000O0O00OOO def __lt__ (OOOOO0OO000O0O000 ,OO0O00OOO0OOO0O00 ): if OOOOO0OO000O0O000 .st ==OO0O00OOO0OOO0O00 .st : return OOOOO0OO000O0O000 .w <OO0O00OOO0OOO0O00 .w return OOOOO0OO000O0O000 .st >=OO0O00OOO0OOO0O00 .st def recurve (OO000O00OOO0O000O ): if f [OO000O00OOO0O000O ]==OO000O00OOO0O000O : return OO000O00OOO0O000O else : f [OO000O00OOO0O000O ]=recurve (f [OO000O00OOO0O000O ]) return f [OO000O00OOO0O000O ]def might (OOO0000O0OO0000O0 ,OOOO0OOO00OOO0000 ): O0000OOOOOOOOO0OO =recurve (OOO0000O0OO0000O0 ) OOOO00O00O0OO0O00 =recurve (OOOO0OOO00OOO0000 ) if O0000OOOOOOOOO0OO ==OOOO00O00O0OO0O00 : return False f [O0000OOOOOOOOO0OO ]=OOOO00O00O0OO0O00 return True def MST (O0O00000O0OO00OOO ,OO00OO00O00O0O00O ,OO000O00OOOOOOOO0 ): OOOO0O0OOOO0OOO00 =0 O00OOO0O0000OOOOO =0 for O00OOO00O0OO0OOOO in OO00OO00O00O0O00O : if O00OOO00O0OO0OOOO .u !=OO000O00OOOOOOOO0 and O00OOO00O0OO0OOOO .v !=OO000O00OOOOOOOO0 : if might (O00OOO00O0OO0OOOO .u ,O00OOO00O0OO0OOOO .v ): O00OOO0O0000OOOOO +=1 if O00OOO00O0OO0OOOO .st <1 : OOOO0O0OOOO0OOO00 +=O00OOO00O0OO0OOOO .w if O00OOO0O0000OOOOO >O0O00000O0OO00OOO -2 : break if O00OOO0O0000OOOOO <O0O00000O0OO00OOO -2 : return inf return OOOO0O0OOOO0OOO00 def nxln (): return O0O0OO00OOOOOO0O0 .stdin .readline ()def main (): OOOOO000000O0O000 =nxln () OOOO0000O000O0OO0 =OOOOO000000O0O000 .split (' ') O000OO000OOOO0OOO =int (OOOO0000O000O0OO0 [0 ]) O0OO00000000O00O0 =int (OOOO0000O000O0OO0 [1 ]) O0OO0OOOO000OO000 =[0 ]*(O000OO000OOOO0OOO +1 ) OOO000O0O0O00OOOO =[0 ] for O0OO0OOO0O000O0OO in range (1 ,O000OO000OOOO0OOO +1 ): OOO000O0O0O00OOOO .append (O0OO0OOO0O000O0OO ) OOO00OOO00OOO0000 =[] for O0OO0OOO0O000O0OO in range (1 ,O0OO00000000O00O0 +1 ): OOOOO000000O0O000 =nxln () OOOO0000O000O0OO0 =OOOOO000000O0O000 .split (' ') OO00O00OOOOO0O000 =int (OOOO0000O000O0OO0 [0 ]) OOO000OOO000O0OOO =int (OOOO0000O000O0OO0 [1 ]) OOO000O0OOOO0OOOO =int (OOOO0000O000O0OO0 [2 ]) OOOO00O0OO0OOO000 =int (OOOO0000O000O0OO0 [3 ]) OOO00OOO00OOO0000 .append (Sume (OO00O00OOOOO0O000 ,OOO000OOO000O0OOO ,OOO000O0OOOO0OOOO ,OOOO00O0OO0OOO000 )) OOO00OOO00OOO0000 .sort () OOO0OO00OOOOO0000 =[0 ] global f for O0OO0OOO0O000O0OO in range (1 ,O000OO000OOOO0OOO +1 ): f =list (OOO000O0O0O00OOOO ) O0OO0OOOO000OO000 [O0OO0OOO0O000O0OO ]=MST (O000OO000OOOO0OOO ,OOO00OOO00OOO0000 ,O0OO0OOO0O000O0OO ) if O0OO0OOOO000OO000 [O0OO0OOO0O000O0OO ]>O0OO0OOOO000OO000 [OOO0OO00OOOOO0000 [0 ]]: OOO0OO00OOOOO0000 .clear () OOO0OO00OOOOO0000 .append (O0OO0OOO0O000O0OO ) elif O0OO0OOOO000OO000 [O0OO0OOO0O000O0OO ]==O0OO0OOOO000OO000 [OOO0OO00OOOOO0000 [0 ]]and O0OO0OOOO000OO000 [O0OO0OOO0O000O0OO ]>0 : OOO0OO00OOOOO0000 .append (O0OO0OOO0O000O0OO ) for O0OO0OOO0O000O0OO in range (0 ,len (OOO0OO00OOOOO0000 )): print (OOO0OO00OOOOO0000 [O0OO0OOO0O000O0OO ],end =(" "if O0OO0OOO0O000O0OO <len (OOO0OO00OOOOO0000 )-1 else ""))if __name__ =="__main__": main ()
0 0
- PAT T1001. Battle Over Cities - Hard Version (35)
- 1001. Battle Over Cities - Hard Version (35)
- 1001. Battle Over Cities - Hard Version (35)
- 1001. Battle Over Cities - Hard Version (35) Faster Version
- PAT (Top Level) Practise 1001Battle Over Cities - Hard Version (35)
- 1001. Battle Over Cities - Hard Version (35)解题报告
- bonus02. Battle Over Cities - Hard Version (20)
- [PAT]Battle Over Cities
- PAT 1013 Battle Over Cities
- PAT 1013. Battle Over Cities
- PAT 1013. Battle Over Cities
- pat 1013 Battle Over Cities
- PAT 1013. Battle Over Cities
- PAT 1013. Battle Over Cities
- PAT 1013. Battle Over Cities
- PAT 1013 Battle Over Cities
- 【PAT】1013. Battle Over Cities
- PAT 1001. Battle Over Cities
- codeforces 732B - Cormen --- The Best Friend Of a Man
- Java transient关键字使用小记
- SLAM学习资料整理
- 第八章上机练习2 老师答案
- String字符串去掉头尾的空格
- PAT T1001. Battle Over Cities - Hard Version (35)
- 在Centos7上搭建jenkins
- oracle删除表字段和oracle表增加字段
- springboot中配置文件说明
- inline的使用
- service全局变量引起的并发问题
- angularJS 自定义指令 方法属性:compile、link
- oracle 给表或字段添加备注语法
- Spark2.0与spark-streaming-kafka_2.11集成报java.lang.NoClassDefFoundError: :错误