Войти
Регистрация
Спроси ai-bota
В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
Показать больше
Показать меньше
MarinaFilimonova
14.03.2023 08:48 •
Информатика
Найти количество вариантов, для заполнения поля 12х2 фигурами 1х2 или 2х1 (использовать можно всего 12 раз ( фигуры 1х2 или 2х1 )) зы.сы. поле 3х2 можно заполнить тремя желательно вместе с кодом, но можно и просто число.
Ответ:
victory66
30.09.2020 07:54
Тебя интересует левое верхнее число из матрицы
, что, кстати, является 12 числом фибоначчи
#include <iostream>
// матрица 2 на 2// a b// c dtemplate< typename T = int >class matrix2{public: T a, b, c, d;
matrix2() : a(0), b(0), c(0), d(0) {} matrix2(T a, T b, T c, T d) : a(a), b(b), c(c), d(d) {}
matrix2 & operator *= (matrix2 & other) { T ta, tb, tc, td; ta = a * other.a + b * other.c; tb = a * other.b + b * other.d; tc = a * other.c + c * other.d; td = b * other.c + d * other.d; a = ta, b = tb, c = tc, d = td; }
matrix2 operator * (matrix2 & other) { T ta, tb, tc, td; ta = a * other.a + b * other.c; tb = a * other.b + b * other.d; tc = a * other.c + c * other.d; td = b * other.c + d * other.d; return matrix2(ta, tb, tc, td); }
matrix2 pow(int power) { matrix2 result(1, 0, 0, 1); matrix2 cur = *this; while (power) { if (power & 1) { power ^= 1; result *= cur; } else { power >>= 1; cur *= cur; } } return result; }
void operator = (matrix2 other) { a = other.a; b = other.b; c = other.c; d = other.d; }
friend std::ostream & operator << (std::ostream & ostr, matrix2 ma) { ostr << std::endl; ostr << ma.a << " " << ma.b << std::endl; ostr << ma.c << " " << ma.d << std::endl; return ostr; }
};
int main(void){ matrix2< int > m1(1, 1, 1, 0), tmp;
const int N = 12;
std::cout << m1.pow(N).a;
return 0;}
0,0
(0 оценок)
Популярные вопросы: Информатика
Вова12345678912
04.03.2021 05:45
Написать программу паскаль. вычислите произведение p=1/2*2/3*3//11 (результат записать с точностью до 8 знаков после запятой)...
Starshine2007
04.03.2021 05:45
Напишите плюсы и минусы поисковой системы yahoo...
maximax325
11.01.2021 22:46
Линейные алгоритмы. на с++ 1. составить программу вычисления значения функции y=7*x^2+3*x-6 при любом значении x. 2. заданы координаты трех вершин треугольника (х1, y1), (х2, у2),...
damama
11.01.2021 22:46
Дано: изображение 640х480, количество цветов 65536. найти: объем изображения в килобайтах. решите с дано и решением. за ранее )...
Акмарал252887
11.01.2021 22:46
Вычислить сумму чётных чисел на отрезке от a до b решить на языке pascal...
Gfdsahjk
22.05.2021 10:25
Интернет версия 1.2 что лишнее в интернете? чего не хватает в интернете? советы по модернизации в интернете. , ! : )...
Скрррррооо
24.08.2022 17:42
Найдите значение выражения -0,5 + 1\4...
кармини
24.08.2022 17:42
Дано высказывание: 《0 1》используя это высказывание и слова 《неверно,》,запишите новое высказывание и определите,истенно оно или ложно....
Taddi
24.08.2022 17:42
Провести за свiйською твариною i розказати про неi за планом: -що це за тварина? -як ii звуть? -який мае зовнiшнiй вигляд? -чим хпрчуеться? -якi мае повадки? -щоти знаеш про цих тварин?...
artem877
24.08.2022 17:42
Накресліть шестикутник.проведіть діагональ яка дільть даний шестикутник на трикутник і пятикутник...
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку
О НАС
О нас
Блог
Карьера
Условия пользования
Авторское право
Политика конфиденциальности
Политика использования файлов cookie
Предпочтения cookie-файлов
СООБЩЕСТВО
Сообщество
Для школ
Родителям
Кодекс чести
Правила сообщества
Insights
Стань помощником
ПОМОЩЬ
Зарегистрируйся
Центр помощи
Центр безопасности
Договор о конфиденциальности полученной информации
App
Начни делиться знаниями
Вход
Регистрация
Что ты хочешь узнать?
#include <iostream>
// матрица 2 на 2// a b// c dtemplate< typename T = int >class matrix2{public: T a, b, c, d;
matrix2() : a(0), b(0), c(0), d(0) {} matrix2(T a, T b, T c, T d) : a(a), b(b), c(c), d(d) {}
matrix2 & operator *= (matrix2 & other) { T ta, tb, tc, td; ta = a * other.a + b * other.c; tb = a * other.b + b * other.d; tc = a * other.c + c * other.d; td = b * other.c + d * other.d; a = ta, b = tb, c = tc, d = td; }
matrix2 operator * (matrix2 & other) { T ta, tb, tc, td; ta = a * other.a + b * other.c; tb = a * other.b + b * other.d; tc = a * other.c + c * other.d; td = b * other.c + d * other.d; return matrix2(ta, tb, tc, td); }
matrix2 pow(int power) { matrix2 result(1, 0, 0, 1); matrix2 cur = *this; while (power) { if (power & 1) { power ^= 1; result *= cur; } else { power >>= 1; cur *= cur; } } return result; }
void operator = (matrix2 other) { a = other.a; b = other.b; c = other.c; d = other.d; }
friend std::ostream & operator << (std::ostream & ostr, matrix2 ma) { ostr << std::endl; ostr << ma.a << " " << ma.b << std::endl; ostr << ma.c << " " << ma.d << std::endl; return ostr; }
};
int main(void){ matrix2< int > m1(1, 1, 1, 0), tmp;
const int N = 12;
std::cout << m1.pow(N).a;
return 0;}