package Ġcom . mar cin mos k ala . math . tests Ċ Ċ import Ġcom . mar cin mos k ala . math . combin ations With Re pet itions Ċ import Ġcom . mar cin mos k ala . math . combin ations With Re pet itions Number Ċ import Ġjunit . framework . Assert . assertEquals Ċ import Ġorg . junit . Test Ċ Ċ internal Ġclass ĠCombin ation With Re petition Test Ġ{ ĊĊĠĠĠ Ġ@ Test Ġfun Ġ` combin ations With Re pet itions Ġfunction Ġis Ġthrowing Ġerror Ġwhen Ġasked Ġfor Ġsub sets Ġof Ġsize Ġsmaller Ġthen Ġ 0 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġset Ġ= Ġset Of ( 1 , Ġ 2 , Ġ 3 , Ġ 4 ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( subset Size Ġin Ġ- 1 0 .. - 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert Is Throw ing Error Ġ{ Ġset . combin ations With Re pet itions ( subset Size ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test Ġfun Ġ` combin ations With Re pet itions Number Ġfunction Ġis Ġthrowing Ġerror Ġwhen Ġasked Ġfor Ġsub sets Ġof Ġsize Ġsmaller Ġthen Ġ 0 `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġset Ġ= Ġset Of ( 1 , Ġ 2 , Ġ 3 , Ġ 4 ) ĊĠĠĠĠĠĠĠ Ġfor Ġ( subset Size Ġin Ġ- 1 0 .. - 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġassert Is Throw ing Error Ġ{ Ġset . combin ations With Re pet itions Number ( subset Size ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test Ġfun Ġ` Test Ġcombinations With Re pet itions Number Ġfor ĠSets Ġwith Ġdifferent Ġsizes `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġset Ġ= Ġset Of ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠĠĠĠĠ Ġval Ġsubset Size To Combination Number Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġto Ġ 1 L , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġto Ġ 3 L , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġto Ġ 6 L , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 3 Ġto Ġ 1 0 L , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 Ġto Ġ 1 5 L , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 5 Ġto Ġ 2 1 L ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġfor Ġ(( subset Size , Ġexpected Combination Number ) Ġin Ġsubset Size To Combination Number ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( expected Combination Number , Ġset . combin ations With Re pet itions Number ( subset Size )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test Ġfun Ġ` Simple Ġcombinations With Re pet itions Ġtest `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġset Ġ= Ġset Of ( 1 , Ġ 2 , Ġ 3 ) ĊĠĠĠĠĠĠĠ Ġval Ġsize To Combin ations Ġ= Ġmap Of < Int , ĠSet < Map < Int , ĠInt >> >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġto Ġset Of ( map Of < Int , ĠInt > ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġto Ġset Of ( map Of ( 1 Ġto Ġ 1 ), Ġmap Of ( 2 Ġto Ġ 1 ), Ġmap Of ( 3 Ġto Ġ 1 )), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġto Ġset Of ( map Of ( 1 Ġto Ġ 1 , Ġ 2 Ġto Ġ 1 ), Ġmap Of ( 2 Ġto Ġ 1 , Ġ 3 Ġto Ġ 1 ), Ġmap Of ( 1 Ġto Ġ 1 , Ġ 3 Ġto Ġ 1 ), Ġmap Of ( 1 Ġto Ġ 2 ), Ġmap Of ( 2 Ġto Ġ 2 ), Ġmap Of ( 3 Ġto Ġ 2 )) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġfor Ġ(( subset Size , Ġexpected Combin ations ) Ġin Ġsize To Combin ations ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( expected Combin ations , Ġset . combin ations With Re pet itions ( subset Size )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }