package Ġle et code Ċ Ċ /** Ċ Ġ* Ġ# Ġ 2 8 7 . ĠFind Ġthe ĠDuplicate ĠNumber Ċ Ġ* ĠGiven Ġan Ġarray Ġof Ġintegers Ġnums Ġcontaining Ġn Ġ+ Ġ 1 Ġintegers Ġwhere Ġeach Ġinteger Ġis Ġin Ġthe Ġrange Ġ[ 1 , Ġn ] Ġinclusive . Ċ Ġ* Ċ Ġ* ĠThere Ġis Ġonly Ġone Ġrepeated Ġnumber Ġin Ġnums , Ġreturn Ġthis Ġrepeated Ġnumber . Ċ Ġ* Ċ Ġ* ĠYou Ġmust Ġsolve Ġthe Ġproblem Ġwithout Ġmodifying Ġthe Ġarray Ġnums Ġand Ġuses Ġonly Ġconstant Ġextra Ġspace . Ċ Ġ* Ċ Ġ* Ġ## ĠExample Ġ 1 : Ċ Ġ* Ġ``` Ċ Ġ* ĠInput : Ġnums Ġ= Ġ[ 1 , 3 , 4 , 2 , 2 ] Ċ Ġ* ĠOutput : Ġ 2 Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ## ĠExample Ġ 2 : Ċ Ġ* Ġ``` Ċ Ġ* ĠInput : Ġnums Ġ= Ġ[ 3 , 1 , 3 , 4 , 2 ] Ċ Ġ* ĠOutput : Ġ 3 Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ## ĠExample Ġ 3 : Ċ Ġ* Ġ``` Ċ Ġ* ĠInput : Ġnums Ġ= Ġ[ 1 , 1 ] Ċ Ġ* ĠOutput : Ġ 1 Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ## ĠExample Ġ 4 : Ċ Ġ* Ġ``` Ċ Ġ* ĠInput : Ġnums Ġ= Ġ[ 1 , 1 , 2 ] Ċ Ġ* ĠOutput : Ġ 1 Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ## ĠConstraints : Ċ Ġ* Ċ Ġ* Ġ* Ġ 1 Ġ<= Ġn Ġ<= Ġ 1 0 5 Ċ Ġ* Ġ* Ġnums . length Ġ== Ġn Ġ+ Ġ 1 Ċ Ġ* Ġ* Ġ 1 Ġ<= Ġnums [ i ] Ġ<= Ġn Ċ Ġ* Ġ* ĠAll Ġthe Ġintegers Ġin Ġnums Ġappear Ġonly Ġonce Ġexcept Ġfor Ġprecise ly Ġone Ġinteger Ġwhich Ġappears Ġtwo Ġor Ġmore Ġtimes . Ċ Ġ* Ċ Ġ* Ċ Ġ* Ġ## ĠFollow Ġup : Ċ Ġ* Ċ Ġ* Ġ* ĠHow Ġcan Ġwe Ġprove Ġthat Ġat Ġleast Ġone Ġduplicate Ġnumber Ġmust Ġexist Ġin Ġnums ? Ċ Ġ* Ġ* ĠCan Ġyou Ġsolve Ġthe Ġproblem Ġin Ġlinear Ġruntime Ġcomplexity ? Ċ Ġ*/ Ċ @ Suppress (" ClassName ") Ċ class Ġ` 2 8 7 _ Find _ The _ Duplicate _ Number ` Ġ{ ĊĠ Ġclass ĠSolution Ġ{ ĊĠĠĠ Ġfun Ġfind Duplicate ( nums : ĠInt Array ): ĠInt Ġ{ ĊĠĠĠĠĠ Ġvar Ġslow Ġ= Ġ 0 ĊĠĠĠĠĠ Ġvar Ġfast Ġ= Ġ 0 ĊĠĠĠĠĠ Ġdo Ġ{ ĊĠĠĠĠĠĠĠ Ġslow Ġ= Ġnums [ slow ] ĊĠĠĠĠĠĠĠ Ġfast Ġ= Ġnums [ nums [ fast ]] ĊĠĠĠĠĠ Ġ} Ġwhile Ġ( slow Ġ!= Ġfast ) ĊĠĠĠĠĠ Ġslow Ġ= Ġ 0 ĊĠĠĠĠĠ Ġwhile Ġ( slow Ġ!= Ġfast ) Ġ{ ĊĠĠĠĠĠĠĠ Ġslow Ġ= Ġnums [ slow ] ĊĠĠĠĠĠĠĠ Ġfast Ġ= Ġnums [ fast ] ĊĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠ Ġreturn Ġslow ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ }