Loading...
Vardanss avatar Vardanss 0 Точки

Array Rotation C# Fundamentals - Exercise

Здравейте. Някой би ли могъл да помогне за решаването на тази задачка?

Write a program that receives an array and number of rotations you have to perform (first element goes at the end) Print the resulting array.

Examples

Input

Output

51 47 32 61 21

2

32 61 21 51 47

32 21 61 1

4

32 21 61 1

2 4 15 31

5

4 15 31 2

 

Тагове:
0
Module: C# Advanced
nsavov avatar nsavov 68 Точки

Имаш масив примерно 0 1 2 3 4 5 6 (големина 7)

Вход за ротация примерно 3 => трябва изхода да ти е 3 4 5 6 0 1 2

Правиш си нов масив със същата големина на началния.

 

С първия цикъл пълниш новия масив от [0] до [големината минус ротацията минус 1]  -  [0 : 3]

с членовете от началния масив които са в диапазона [ротация] - [големина минус 1]  -  [3 : 6]

 

С втория цикъл пълниш новия масив от [големината минус ротацията] до [големината минус 1]  -  [4 : 6]

с членовете от началния масив които са в диапазона от [0] до [ротацията минус 1]  -  [0 : 2]

 

В началото правиш проверка дали ротацията ти е по-голяма от големината на масива. Ако е по-голяма, правиш

ротация -= големина

докато ротацията не стане по-малка.

 

Или направо си правиш винаги ротация %= големина, което сега виждам че е оптималния вариант :)

 

Цък

(Аз съм добавил малко ненужни неща)

0
11/06/2019 13:01:56
Vardanss avatar Vardanss 0 Точки

Много благодаря за изчерпателния отговор. :)

0
12/06/2019 10:24:13
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.