Ուղարկել | Բոլոր լուծումները | Լավագույն լուծումները | Վերադառնալ ցուցակին |
SKHTA - Շղթաներ |
Դիտարկենք N օղակից կազմված շղթա։ Ամենաքիչը քանի՞ օղակ է պետք անջատել, որպեսզի մնացած կտորներից հնարավոր լինի 1-ից N օղակ երկարության ցանկացած շղթա հավաքել։ Նոր շղթաներ կազմելու ժամանակ անջատած օղակները նույնպես կարելի է օգտագործել։
Օրինակ, N = 21 դեպքում բավական է տրոհել 2 օղակ այնպես, որ ստացվեն 3, 5, 11 երկարության կտորներ։ Երկու անջատված օղակները համարվում են մեկ երկարության շղթաներ։
Գրեք ծրագիր, որը տրված N բնական թվի՝ սկզբանակն շղթայի երկարության, համար գտնում է, թե ամենաքիչը քանի օղակ է պետք անջատել վերը նկարագրված նպատակին հասնելու համար։
Մուտքը
Տրված է մի N (1≤N≤109) բնական թիվ։
Ելքը
Արտածել մի թիվ՝ օղակների գտնված մինիմալ քանակը։
Օրինակ
Մուտքը. 21 Ելքը. 2