package Ġcom . daily . algo th rim . leetcode Ċ Ċ /** Ċ Ġ* Ġ 1 3 2 . Ġ åĬł æ² ¹ ç«Ļ Ċ Ġ* Ġåľ¨ ä¸ĢæĿ¡ çİ¯ è·¯ ä¸Ĭ æľī Âł N Âł ä¸ª åĬł æ² ¹ ç«Ļ ï¼Į åħ¶ä¸Ń ç¬¬ Âł i Âł ä¸ª åĬł æ² ¹ ç«Ļ æľī æ± ½ æ² ¹ Âł gas [ i ] Âł åįĩ ãĢĤ Ċ Ġ* Ċ Ġ* Ġ ä½ł æľī ä¸Ģ è¾ Ĩ æ² ¹ ç®± å®¹ éĩı æĹł éĻĲ çļĦ çļĦ æ± ½ è½¦ ï¼Į ä»İ ç¬¬ Ġi Ġä¸ª åĬł æ² ¹ ç«Ļ å¼Ģ å¾Ģ ç¬¬ Ġi + 1 Âł ä¸ª åĬł æ² ¹ ç«Ļ éľĢè¦ģ æ¶Ī èĢĹ æ± ½ æ² ¹ Âł cost [ i ] Âł åįĩ ãĢĤ ä½ł ä»İ åħ¶ ä¸ŃçļĦ ä¸Ģä¸ª åĬł æ² ¹ ç«Ļ åĩº åıĳ ï¼Į å¼Ģå§ĭ æĹ¶ æ² ¹ ç®± ä¸ºç©º ãĢĤ Ċ Ġ* Ċ Ġ* Ġå¦Ĥæŀľ ä½łåı¯ä»¥ ç» ķ çİ¯ è·¯ è¡Į é© ¶ ä¸Ģ åĳ¨ ï¼Į åĪĻ è¿ĶåĽŀ åĩº åıĳ æĹ¶ åĬł æ² ¹ ç«Ļ çļĦ ç¼ĸåı· ï¼Į åĲ¦åĪĻ è¿ĶåĽŀ Ġ- 1 ãĢĤ Ċ Ġ* Ċ Ġ* Ġ è¯´æĺİ : ÂłĊ Ġ* Ċ Ġ* Ġå¦Ĥæŀľ é¢ĺ çĽ® æľī è§£ ï¼Į è¯¥ çŃĶ æ¡Ī åį³ ä¸º åĶ¯ä¸Ģ çŃĶ æ¡Ī ãĢĤ Ċ Ġ* Ġ è¾ĵåħ¥ æķ°ç»Ħ åĿĩ ä¸º éĿŀ ç©º æķ°ç»Ħ ï¼Į ä¸Ķ éķ¿åº¦ çĽ¸åĲĮ ãĢĤ Ċ Ġ* Ġ è¾ĵåħ¥ æķ°ç»Ħ ä¸ŃçļĦ åħĥç´ł åĿĩ ä¸º éĿŀ è´Ł æķ° ãĢĤ Ċ Ġ* Ġ ç¤ºä¾ĭ Âł 1 : Ċ Ġ* Ċ Ġ* Ġ è¾ĵåħ¥ : Ċ Ġ* Ġgas Ġ Ġ= Ġ[ 1 , 2 , 3 , 4 , 5 ] Ċ Ġ* Ġcost Ġ= Ġ[ 3 , 4 , 5 , 1 , 2 ] Ċ Ġ* Ċ Ġ* Ġ è¾ĵåĩº : Ġ 3 Ċ Ġ* Ċ Ġ* Ġ è§£éĩĬ : Ċ Ġ* Ġä»İ Ġ 3 Ġ åı· åĬł æ² ¹ ç«Ļ ( ç´¢å¼ķ ä¸º Ġ 3 Ġ å¤Ħ ) åĩº åıĳ ï¼Į åı¯ èİ·å¾Ĺ Ġ 4 Ġ åįĩ æ± ½ æ² ¹ ãĢĤ æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ= Ġ 0 Ġ+ Ġ 4 Ġ= Ġ 4 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 4 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 4 Ġ- Ġ 1 Ġ+ Ġ 5 Ġ= Ġ 8 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 0 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 8 Ġ- Ġ 2 Ġ+ Ġ 1 Ġ= Ġ 7 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 1 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 7 Ġ- Ġ 3 Ġ+ Ġ 2 Ġ= Ġ 6 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 2 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 6 Ġ- Ġ 4 Ġ+ Ġ 3 Ġ= Ġ 5 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 3 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į ä½ł éľĢè¦ģ æ¶Ī èĢĹ Ġ 5 Ġ åįĩ æ± ½ æ² ¹ ï¼Į æŃ£ å¥½ è¶³ å¤Ł ä½ł è¿ĶåĽŀ åĪ° Ġ 3 Ġ åı· åĬł æ² ¹ ç«Ļ ãĢĤ Ċ Ġ* Ġ åĽłæŃ¤ ï¼Į 3 Ġåı¯ ä¸º èµ· å§ĭ ç´¢å¼ķ ãĢĤ Ċ Ġ* Ġ ç¤ºä¾ĭ Ġ 2 : Ċ Ġ* Ċ Ġ* Ġ è¾ĵåħ¥ : Ċ Ġ* Ġgas Ġ Ġ= Ġ[ 2 , 3 , 4 ] Ċ Ġ* Ġcost Ġ= Ġ[ 3 , 4 , 3 ] Ċ Ġ* Ċ Ġ* Ġ è¾ĵåĩº : Ġ- 1 Ċ Ġ* Ċ Ġ* Ġ è§£éĩĬ : Ċ Ġ* Ġ ä½ł ä¸įèĥ½ ä»İ Ġ 0 Ġ åı· æĪĸ Ġ 1 Ġ åı· åĬł æ² ¹ ç«Ļ åĩº åıĳ ï¼Į åĽłä¸º æ²¡æľī è¶³ å¤Ł çļĦ æ± ½ æ² ¹ åı¯ä»¥ è®© ä½ł è¡Į é© ¶ åĪ° ä¸ĭ ä¸Ģä¸ª åĬł æ² ¹ ç«Ļ ãĢĤ Ċ Ġ* Ġ æĪĳä»¬ ä»İ Ġ 2 Ġ åı· åĬł æ² ¹ ç«Ļ åĩº åıĳ ï¼Į åı¯ä»¥ èİ·å¾Ĺ Ġ 4 Ġ åįĩ æ± ½ æ² ¹ ãĢĤ ĠæŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ= Ġ 0 Ġ+ Ġ 4 Ġ= Ġ 4 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 0 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 4 Ġ- Ġ 3 Ġ+ Ġ 2 Ġ= Ġ 3 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ å¼Ģ å¾Ģ Ġ 1 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į æŃ¤ æĹ¶ æ² ¹ ç®± æľī Ġ 3 Ġ- Ġ 3 Ġ+ Ġ 3 Ġ= Ġ 3 Ġ åįĩ æ± ½ æ² ¹ Ċ Ġ* Ġ ä½ł æĹłæ³ķ è¿ĶåĽŀ Ġ 2 Ġ åı· åĬł æ² ¹ ç«Ļ ï¼Į åĽłä¸º è¿Ķ ç¨ĭ éľĢè¦ģ æ¶Ī èĢĹ Ġ 4 Ġ åįĩ æ± ½ æ² ¹ ï¼Į ä½Ĩæĺ¯ ä½łçļĦ æ² ¹ ç®± åıªæľī Ġ 3 Ġ åįĩ æ± ½ æ² ¹ ãĢĤ Ċ Ġ* Ġ åĽłæŃ¤ ï¼Į æĹł è®º æĢİ æł· ï¼Į ä½ł éĥ½ ä¸į åı¯èĥ½ ç» ķ çİ¯ è·¯ è¡Į é© ¶ ä¸Ģ åĳ¨ ãĢĤ Ċ Ġ* Ġ*/ Ċ class ĠCan Complete Circuit Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( Can Complete Circuit (). solution ( int ArrayOf ( 1 , Ġ 2 , Ġ 3 , Ġ 4 , Ġ 5 ), Ġint ArrayOf ( 3 , Ġ 4 , Ġ 5 , Ġ 1 , Ġ 2 ))) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġgas Ġ Ġ= Ġ[ 1 , 2 , 3 , 4 , 5 ] ĊĠĠĠ Ġ// Ġcost Ġ= Ġ[ 3 , 4 , 5 , 1 , 2 ] ĊĠĠĠ Ġ// Ġ 3 ĊĠĠĠ Ġfun Ġsolution ( gas : ĠInt Array , Ġcost : ĠInt Array ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsize Ġ= Ġgas . size ĊĠĠĠĠĠĠĠ Ġvar Ġi Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġwhile Ġ( i Ġ< Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsum Gas Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsum Cost Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġcont Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( cont Ġ< Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġindex Ġ= Ġ( i Ġ+ Ġcont ) Ġ% Ġsize ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsum Gas Ġ+= Ġgas [ index ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsum Cost Ġ+= Ġcost [ index ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( sum Cost Ġ> Ġsum Gas ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbreak ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcont ++ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( cont Ġ== Ġsize ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġi ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi Ġ+= Ġcont Ġ+ Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġ- 1 ĊĠĠĠ Ġ} Ċ Ċ }