1) Дано число 85. Переведите его в двоичное представление. Произведите сдвиг этого числа:
а) на 1 разряд влево и запишите полученное число в шестнадцатеричной и десятичной си-стемах счисления
б) на 1 разряд вправо и запишите полученное число в шестнадцатеричной и десятичной си-стемах счисления
2) Дан фрагмент программы:
mov al, 5
mov bl, 6
mul bl
Получите результат и опишите работу команд, используя комментарии
3) Дан фрагмент программы:
mov al, 010101b
or al,1001b
and al, 1010b
Получите результат и опишите работу команд, используя комментарии
Записать результат, полученный в регистре в шестнадцатеричной и десятичной системах счисления
32
Объяснение:
I = K * i, где
I - информационный объём текста (сообщения)
K - количество символов в тексте (сообщении)
i - информационный вес одного символа (число бит, используемых для записи одного символа)
K = k1 * k2 * k3, где
K - количество символов в тексте (сообщении)
k1 - количество страниц в тексте (сообщении)
k2 - количество строк на странице в тексте (сообщении)
k3 - количество символов в строке в тексте (сообщении)
Дано:
I = 300 Кбайт = 307 200 байт
k2 = 96 строк
k1 = 100 страниц
i = 1 байт (предположительно)
Найти:
k3
I = k1 * k2 * k3 * i
k3 = I / (k1 * k2 * i)
k3 = 307 200 / (96 * 100 * 1) = 307 200 / 9 600 = 32 символа в строке
Ах ты ж мелкий, сам КБО написать не можешь?) - это приговор.
Объяснение:
#include <bits/stdc++.h>
using namespace std;
int cnt[30], kol;
string s;
bool check (int mid) {
int x[30]{}, y = 0;
for (int i = 0; i < mid; i++) {
x[s[i] - 'a' + 1]++;
if (x[s[i] - 'a' + 1] == 1)
y++;
}
int l, r = mid - 1;
for (l = 0; r < s.size();) {
if (y == kol)
return true;
if (x[s[l] - 'a' + 1] == 1)
y--;
x[s[l] - 'a' + 1]--;
l++;
r++;
if (x[s[r] - 'a' + 1] == 0)
y++;
x[s[r] - 'a' + 1]++;
}
return false;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cin >> s;
for (auto it : s)
cnt[it - 'a' + 1]++;
for (int i = 1; i <= 26; i++) {
if (cnt[i] > 0)
kol++;
}
int l = 0, r = s.size();
while (r - l > 1) {
int mid = l + (r - l) / 2;
if (check (mid))
r = mid;
else
l = mid;
}
cout << r;
}