ДележЯблок 3 школьников делят к яблок "поровну", то есть так, чтобы количество яблок, доставшихся любым двум школьникам, отличалось не более, чем на 1. Входные данные Программа получает на вход числа пиk. Выходные данные Программа должна вывести количество школьников, которым достанется яблок - меньше, чем некоторым из их товарищей. Примечание При решении этой задачи нельзя пользоваться условной инструкцией if и циклами. Пример 1 Ввод: 7 30 Вывод: Y 5 О о
Ctrl+C — стандартное и часто используемое при работе на компьютере сочетание клавиш для копирования данных в буфер обмена Windows. Чтобы скопировать некоторый фрагмент текста, табличных данных и т. д. в буфер, нужно сначала выделить этот фрагмент (как правило, это делается нажиманием и удерживанием левой кнопки мыши, после чего мышь перемещают по фрагменту, который необходимо выделить и отпускают кнопку
Ctrl+V — стандартное и часто используемое при работе на компьютере сочетание клавиш для вставки данных из буфера обмена Windows. Позволяет не набирать повторно один и тот же текст, а скопировать его из другого или этого же документа.
с программой, даже условие не могу понять хотя-бы натолкнуть на мысль
Условие
Напишите функцию, которая как результат будет возвращать подпоследовательность элементов массива, начиная с позиции X до позиции Y включительно в обратном порядке с шагом Z как новый массив. По умолчанию шаг должен быть равен 1.
Ваша задача для заданного массива вывести срез с шагом 1 и с шагом, заданным с клавиатуры.
Формат входных данных
В первой строке задается натурально число N, (N ≤ 10000)- размер массива.
В следующей строке вводятся N целых чисел, по модулю не превосходящих 109 - элементы массива.
В последней строке вводятся три целых числа X, Y и Z (0 ≤ X ≤ Y < N, 0 < Z < N)- границы и шаг среза соответственно.
Формат выходных данных
В первой строке выведите перевернутый фрагмент массива с шагом 1.
Во второй строке выведите перевернутый фрагмент массива с шагом Z.
1
СМОТРЕТЬ ОТВЕТ
ДОБАВИТЬ ОТВЕТ
Спросите wog18303 о заданном вопросе...
wog18303 ждёт твоего решения.
ответь на вопрос и заработай .
ответ
5,0/5
1
slysnenko
хорошист
34 ответов
469 пользователей, получивших
#include <iostream>
#include <vector>
using namespace std;
void srez(vector<int> arr, int x, int y, int z = 1) {
Ctrl+C — стандартное и часто используемое при работе на компьютере сочетание клавиш для копирования данных в буфер обмена Windows. Чтобы скопировать некоторый фрагмент текста, табличных данных и т. д. в буфер, нужно сначала выделить этот фрагмент (как правило, это делается нажиманием и удерживанием левой кнопки мыши, после чего мышь перемещают по фрагменту, который необходимо выделить и отпускают кнопку
Ctrl+V — стандартное и часто используемое при работе на компьютере сочетание клавиш для вставки данных из буфера обмена Windows. Позволяет не набирать повторно один и тот же текст, а скопировать его из другого или этого же документа.
wog18303
сейчас
Информатика
1 - 4 классы
+18 б.
ответ дан
с программой, даже условие не могу понять хотя-бы натолкнуть на мысль
Условие
Напишите функцию, которая как результат будет возвращать подпоследовательность элементов массива, начиная с позиции X до позиции Y включительно в обратном порядке с шагом Z как новый массив. По умолчанию шаг должен быть равен 1.
Ваша задача для заданного массива вывести срез с шагом 1 и с шагом, заданным с клавиатуры.
Формат входных данных
В первой строке задается натурально число N, (N ≤ 10000)- размер массива.
В следующей строке вводятся N целых чисел, по модулю не превосходящих 109 - элементы массива.
В последней строке вводятся три целых числа X, Y и Z (0 ≤ X ≤ Y < N, 0 < Z < N)- границы и шаг среза соответственно.
Формат выходных данных
В первой строке выведите перевернутый фрагмент массива с шагом 1.
Во второй строке выведите перевернутый фрагмент массива с шагом Z.
1
СМОТРЕТЬ ОТВЕТ
ДОБАВИТЬ ОТВЕТ
Спросите wog18303 о заданном вопросе...
wog18303 ждёт твоего решения.
ответь на вопрос и заработай .
ответ
5,0/5
1
slysnenko
хорошист
34 ответов
469 пользователей, получивших
#include <iostream>
#include <vector>
using namespace std;
void srez(vector<int> arr, int x, int y, int z = 1) {
for (int i = y; i >= x; i -= z) {
cout << arr[i] << ' ';
}
cout << '\n';
}
int main() {
int n;
cin >> n;
vector<int> arr(n);
for (int i = 0; i < n; ++i) cin >> arr[i];
int x, y, z;
cin >> x >> y >> z;
srez(arr, x, y);
srez(arr, x, y, z);
return 0;
}
Объяснение: