М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
boda13
boda13
30.01.2021 05:13 •  Информатика

Ограничение времени: 1 секунда Ограничение памяти: 64mb
Ввод: cube.in
Вывод: cube.out

В одной из настольных игр игровой процесс заключается в том, что кубики перекатываются по клетчатому игровому полю через ребра с одной грани на другую. Каждый ход состоит в одном перекатывании кубика через одно ребро. Пропускать ход нельзя. Назовем основой ту грань кубика, которой он лежит на столе. Рассмотрим развертку стандартного игрового кубика.

Если основная грань кубика на столе - это, например, 2, то его можно перекатить за один ход так, что основной гранью станет 6, 4, 3, или 1, но перекатить его за один ход на грань 5 не получится.
Дана последовательность основных граней, оказывающихся таковыми после каждого очередного хода одним кубиком. Напишите программу, которая определит, возможна ли была такая последовательность.

Формат ввода

Файл cube.in содержит восемь последовательностей граней одного кубика, которые оказывались основными в процессе игры. Каждая последовательность - в отдельной строке. Последовательности друг с другом не связаны. Числа в последовательностях записаны подряд без пробелов. В каждой последовательности не менее 2 и не более 1000 цифр
Используемые в последовательностях цифры корректны, т.е. принадлежат диапазону от 1 до 6.

Формат вывода

В выходной файл cube.out запишите 8 строк, в каждой из которых должна находиться единица или ноль. Если последовательность ходов в соответствующей строке входного файла возможна - выводите единицу. В обратном случае выводите ноль.

👇
Ответ:
geptor2012
geptor2012
30.01.2021

Должно работать, язык: c++

Объяснение:

#include <iostream>

#include <fstream>

#include <string>

using namespace std;

ifstream fin("cube.in");

ofstream fout("cube.out");

string a;

int i,b,c=1;

int main()

{

   for(i=0;i<8;i++){

       getline(fin, a);

       for(b=0; b<a.length()-1; b++){

           if(a[b]+a[b+1]==7) c=0;

       }

       fout << c << endl;

   }

   fin.close();

   fout.close();

}

4,6(39 оценок)
Открыть все ответы
Ответ:
Natalye71
Natalye71
30.01.2021
Type mas=array[,]of integer;
var
  i,j:integer;
  a:mas;
  b:mas;

procedure masmin(a:array[,]of integer);
var
  n,m,i,j:integer;
  c:array of integer;
begin
n:=length(a,0)-1;
m:=length(a,1)-1;
setlength(c,m+1);
writeln('Массив минимумов:');
for i:=1 to m do
  begin
  for j:=1 to n do
    begin
    if j=1 then c[i]:=a[j,1];
    if a[j,i]<c[i] then c[i]:=a[j,i];
    end;
  write(c[i],' ');
  end;
writeln;
end;

begin
setlength(a,6,7);
writeln('Массив А:');
for i:=1 to 5 do
  begin
  for j:=1 to 6 do
    begin
    a[i,j]:=random(10);
    write(a[i,j],' ');
    end;
  writeln;
  end;
masmin(a);
writeln;
setlength(b,8,10);
writeln('Массив B:');
for i:=1 to 7 do
  begin
  for j:=1 to 9 do
    begin
    b[i,j]:=random(10);
    write(b[i,j],' ');
    end;
  writeln;
  end;
masmin(b);
end.
4,7(15 оценок)
Ответ:
missasha04
missasha04
30.01.2021

# Задача 1

# В массиве С = {1, 2, -3, 0, -1, -7, -9, 4, 5, -6, 3, 2, 9, 10, -7, -9, -5}

# найти количество соседств двух положительных элементов и количество

# двух отрицательных элементов.

c = [1, 2, -3, 0, -1, -7, -9, 4, 5, -6, 3, 2, 9, 10, -7, -9, -5]

count_pos = 0

count_neg = 0

for i, val in enumerate(c):

   if i > 0:

       if c[i - 1] < 0 and val < 0:

           count_neg += 1

       elif c[i - 1] > 0 and val > 0:

           count_pos += 1

print("Количество двух соседних положительных элементов: ", count_pos)

print("Количество двух соседних отрицательных элементов: ", count_neg)

# Задача 2

# Отсортировать в матрице столбцы по убыванию

# значений элементов в первой строке.

# Матрицу задать самостоятельно.

import random

arr = [[random.randint(1, 20) for _i in range(4)] for _j in range(4)] # Матрица 4х4

N = len(arr)

# Печать исходной матрицы

print("\nИсходная матрица:")

for el in arr:

   print(el)

# Сортировка матрицы

for i in range(N - 1):

   for j in range(N - i - 1):

       if arr[0][j] > arr[0][j + 1]:

           for z in range(N):

               arr[z][j], arr[z][j + 1] = arr[z][j + 1], arr[z][j]

print("\nОтсортированная матрица: ")

for el in arr:

   print(el)

# Python 3.7.3

4,8(90 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ