Алмастыру — бұл ұзындығы болатын, 1-ден -ге дейінгі бүтін
сандардың тізбегі, тізбекте барлық сандар бір реттен кездеседі. Мысалы,
[1], [4,3,5,1,2], [3,2,1] — алмастырулар, ал [1,1],
[4,3,1], [2,3,4] — емес.
Ұзындығы болатын алмастыруы берілген. Сізге операция
жасауға рұқсат етіледі, олардың -сы және екі көршілес
элементті орын ауыстырумен алмастыруды өзгертеді. Әр деген
операцияны бір реттен артық қолдануға болмайды және операцияны кез
келген ретпен қолдануға болады.
Сізге сұрау берілген. Әр сұрауда және екі элемент орын
ауыстырылады. Бастапқы алмастыру үшін және әр сұраудан кейін қазіргі
алмастыруды сорттау үшін қажетті рұқсат етілген операциялардың минималды
санын анықтау қажет, немесе сорттау мүмкін емес болса, шығару
керек.
Енгізу
Бірінші жолда бір бүтін сан —
алмастырудың ұзындығы.
Екінші жолда түрлі бүтін сандар —
-ден -ге дейінгі сандардың алмастыруы.
Үшінші жолда бір бүтін сан — сұраулар
саны.
Келесі жолда екі бүтін сан және
— орын ауыстыру қажет
элементтердің индекстері.
Шығару
жолды шығарыңыз, әр жолда бір сан — қазіргі алмастыруды
сорттау үшін қажетті рұқсат етілген операциялардың минималды саны,
немесе , егер бұл мүмкін болмаса.
Бағалау жүйесі
Бұл тапсырмада ішкі есеп бар.
Мысалдар
Енгізу 1
Көшіру
4
2 1 4 3
3
1 2
3 2
3 4
Жауап 1
Көшіру
2
1
2
-1
Ескертпелер
Бастапқы алмастыру: [2, 1, 4, 3] және орын ауыстырамыз,
нәтижесінде: [1, 2, 4, 3] және орын ауыстырамыз,
нәтижесінде: [1, 2, 3, 4]
Бірінші сұраудан кейін: [1, 2, 4, 3], және орын
ауыстырамыз, нәтижесінде: [1, 2, 3, 4]
Екінші сұраудан кейін: [1, 4, 2, 3], және орын
ауыстырамыз, нәтижесінде: [1, 2, 4, 3], және орын
ауыстырамыз, нәтижесінде: [1, 2, 3, 4]
Үшінші сұраудан кейін: [1, 4, 3, 2] және бұл алмастыруны сорттау
мүмкін емес.
Пікірлер