chinyakova97p02efn
25.04.2022 08:48

Выполните сортировку массивов ТРЕМЯ методом пузырька, прямого поиска и быстрой сортировкой. нужно очень
#include
using namespace std;
int main() {
uniform_int_distribution uid(1U, 8U);
mt19937 gen{ random_device()() };
auto lettrs = " ABCDEFGH";
auto digits = " 12345678";
char chess[100U] = { 0 };
char rook[100U] = { 0 };
for (auto i = 0U; i < size(chess); ++i) {
chess[i] = i & 1U? digits[uid(gen)] : lettrs[uid(gen)];
}
for (auto x : chess) cout.put(x);
puts("");
auto n = 0U;
for (auto i = 0U, j = 0U; i < size(chess); i += 4U) {
if (chess[i] == chess[i + 2U] && chess[i + 1U] != chess[i + 3U]
|| chess[i] != chess[i + 2U] && chess[i + 1U] == chess[i + 3U]) {
auto e = j + 4U;
auto k = i;
do rook[j] = chess[k++]; while (++j < e);
n += 4U;
}
}
for (auto i = 0U, m = 1U; i < n; ++i, ++m) {
cout.put(rook[i]);
if (0U == m % 4U) puts("");
}
system("pause > nul");
}​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
gorod1723
07.10.2020 23:52
Вариант решения №1:
1)8 МБайт = 8192 КБайт
2) 8192 Кбайт / 4096 Кбайт = 2 - это отношение первого файла,которое мы передавали к второму. Тем самым решение получается из этого таким образом:

Первый файл больше второго в 2 раза. При неизменяемой скорости, второй файл соответственно будет передан в 2 раза быстрее -> 128/2 = 64 сек.

Вариант решения №2:
1) 8 МБайт = 8192 КБайт
2) найдём скорость соединения:

8192 Кбайт / 128 сек = 64 Кб/сек.

3) узнаем время передачи второго файла

4096 Кбайт / 64 Кб/сек = 64 сек.

ОТВЕТ : 64 сек.

Отмечу,что при решении похожих задач некоторые при переводе скорости и других местах вместо 1024 считают как 1000. Из-а этого в решении могут появиться такие ответы (для данной задачи) как 65,536 сек.

Обращайте внимание на то,с какой буквы написана величина! КБ=КБайт = 1024 байт. Если первая заглавная,то считается 2 в степени, то есть как принято в информатике.
кБайт = 1000 байт. Если с маленькой,то приставка кило считается по системе СИ, как в физике и является 10^3.
0,0(0 оценок)
Ответ:
albinazagidulli
23.02.2023 02:52
Давай разбираться. Если бы квартира в доме была 1 = 2^0, то информация, что Вася живет в этой квартире, имела бы 0 информации.
Потому что, если мы заранее знаем, что Вася живет в этом доме, то сразу ясно, что в этой единственной квартире.
Дополнительное сообщение об этом не несет никакой информации вообще.
Если квартир 2 = 2^1, то сообщение несет 1 бит информации. 1 квартира = 0, 2 квартира = 1.
Если квартир 3, 2<3<4, то есть 2^1<3<2^2, то будет 2 бита. 1кв = 00, 2кв = 01, 3кв = 10. Одного бита не хватает.
И так далее. Сколько квартир в доме (в смысле - 2 в какой степени), столько бит и будет.
128 < 150 < 256, то есть 2^7 < 150 < 2^8, поэтому уточнение номера квартиры дает 8 бит информации.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота