Ուղարկել | Բոլոր լուծումները | Լավագույն լուծումները | Վերադառնալ ցուցակին |
LAMPER - Լամպեր |
2*N լամպեր շարված են երկու տողերում և N սյուներում։ Սկզբում բոլոր լամպերն անջատված են։ Ցանկանում ենք որոշ լամպեր միացնել։ Բայց դա պետք է անել մինիմալ քայլերի միջոցով։ Մի քայլում կարելի է միևնույն տողի կամ սյան մի քանի (մեկ կամ ավել) իրար հաջորդող լամպերի վիճակը փոխել՝ միացրածներն անջատել, անջատածները միացնել։
Տրված է լամպերի նպատակային կոնֆիգուրացիան։ Հարկավոր է գտնել մինիմալ քայլերի քանակը այդ կոնֆիգուրացիան ստանալու համար։
Մուտք
Առաջին տողում տրված է սյուների N, 1 ≤ N ≤ 10,000քանակը։ Հաջորդ երկու տողերից յուրաքանչյուրը պարունակում է N սիմվոլ, որոնք ներկայացնում են նպատակային կոնֆիգուրացիան։ ‘1’ սիմվոլը ցույց է տալիս, որ համապատասխան լամպը պետք է վառված վիճակում լինի, ‘0’-ն ցույց է տալիս, որ այն պետք է անջատված լինի։
Ելք
Ելքում պետք է արտածել մեկ թիվ՝ պահանջվող մինիմալ քայլերի քանակը։
Օրինակ
Մուտք. 20
11101101111000101010
01111101100000010100
Ելք. 7Հետևյալ աղյուսակում ցույց է տրված, թե ինչպես է հնարավոր 7 քայլերի միջոցով ստանալ երկրորդ օրինակի
կոնֆիգուրացիան։
0 00000000000000000000 00000000000000000000 |
1 11100000000000000000 00000000000000000000 |
2 11100010000000000000 00000010000000000000 |
3 11100010000000000000 01111101100000000000 |
4 11101101111000000000 01111101100000000000 |
5 11101101111000111110 01111101100000000000 |
6 11101101111000101110 01111101100000010000 |
7 11101101111000101010 01111101100000010100 |
Ավելացրեց. | Andreasyan |
Ամսաթիվ. | 2015-03-14 |
Ժամանակի սահմանափակումը. | 0.100s |
Ծրագրի տեքստի սահմանափակումը. | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Լեզուներ. | C CSHARP C++ 4.3.2 CPP CPP14 JAVA PAS-GPC PAS-FPC PYTHON3 |