#include <iostream>
using namespace std;
int main()
{
int m, n;
cin >> m >> n;
int a[m][n];
for(int i=0; i<m; i++)
for(int j=0; j<n; j++)
cin >> a[i][j];
int me=m/2;
if(me>0)
{
int k=1;
for(int i=2; i<m; i+=2)
{
for(int j=0; j<n; j++)
a[k][j]=a[i][j];
k++;
}
for(int i=m-me; i<m; i++)
for(int j=0; j<n; j++)
a[i][j]=0;
for(int i=0; i<m; i++)
{
for(int j=0; j<n; j++)
cout << a[i][j] << " ";
cout << endl;
}
}
return 0;
}
<span>Сколько существует различных наборов ответов на эту олимпиаду, отличающихся ответом хотя бы на одну задачу?</span>
<span>1задача - 5 вариантов</span>
<span>2 - 3</span>
<span>3 - 6</span>
<span>4 - 10</span>
<span>5 - 7</span>
<span>Всего (((5*3)*6)*10)*7=6300</span>
<span>
</span>
<span>Ответ 6300</span>
Сначала надо перевести все эти числа из восьмеричной системы в двоичную.
Каждая восьмеричная цифра даёт три двоичные.
Переводить можно по таблице, где проставлены восьмеричные числа от нуля до семи и соответствующие им двоичные.
После, надо все полученные двоичные числа записать одно под другим на бумаге в клеточку- чтобы каждая цифра была в отдельной клеточке.
И, закрасить клетки, в которых оказались единицы.
Должен получиться рисунок.
Я всё это сделал в таблице Excel (смотри скрин внизу), саму таблицу тоже там можно скачать.
#include <iostream>
#include <list>
using namespace std;
int main() {
list<int>mylist;
//Делаем со списком, что хотим
mylist.push_back(1);
mylist.push_back(2);
mylist.push_back(3);
mylist.push_back(-4);
mylist.push_back(5);
for (auto i : mylist) {
cout << i << " ";
}
cout << "\n";
//Удаляем последний отрицательный элемент
auto it = mylist.end();
while (*it > 0) {
if (it == mylist.begin()) {
cout << "Not found.\n";
return 0;
}
it--;
}
//Делаем со списком, что хотим
mylist.erase(it);
for (auto i : mylist){
cout << i << " ";
}
return 0;
}