program zadacha;
var x,y,z,ans: int64;
begin
readln(x,y,z);
if (x> 0) and (y> 0) and (z> 0) then inc(ans);
if (ans=0) then writeln('такой треугольник построить нельзя') else begin
write('такой треугольник можно построить');
if(x=y) xor (x=z) xor (y=z) then write(', он будет равнобедренным') else
if(x=y) and (x=z) and (z=y) then write(', он будет равносторонним')else
if(x=y) xor (x=z) xor (y=z) then write(', он будет равнобедренным');
if (sqr(x)+sqr(y)=sqr(z)) or (sqr(y)+sqr(z)=sqr(x)) or (sqr(z)+sqr(x)=sqr(y)) then
write(', он будет прямоугольным.') else
if(sqrt(sqr(x)+sqr(y))> z) xor (sqrt(sqr(z)+sqr(y))> x) xor (sqrt(sqr(x)+sqr(z))> y) then write(', он будет остроугольным.')
else write(', он будет тупоугольгым.');
end;
end.
ps: не забудь пометить как лучшее решение )
1. сначала нужно найти минимальную длину кода, который позволит занумеровать 800 человек. понятно, что
800< 2^n, где n - минимально.
ясно, что n=10, потому что
512=2^9 < 800 < 2^10=1024
ну а теперь совсем просто. учащихся 320, код каждого 10бит, поэтому общий объём информации
320*10=3200бит = 3200/8 = 400байт.
вот и всё.
ну и ещё. 1. понятно, что такую кодировку можно использовать, пока учащихся меньше 1025.
2. рассуждения действительны для кодов одинаковой длины, существуют и другие коды, например, разной длины, самым известным представителем которой является код(азбука) морзе. в этой кодировке, например, коды
1, 01, 001, 0001 - разные коды.
3. из условия не ясно, о какой кодировке идёт речь, но если о другой, то количество информации тоже несложно посчитать, правда, необходимо, например, зарезервировать какой-то код для разделителя, отделяющего один код от другого(у морзе это немного более длинная пауза между символами, чем между 0 1(точкой и тире). существуют и другие коды, например брайля(для слепых), в котором, например разным объектам соответствуют одинаковые коды, напрмер, буквы а,б,ц,д и цифры 1,2,3,4 кодируются одинаково, но там есть спец коды-регистры, определяющие, что будет идти за ними. и вообще оптимальное кодирование - это целая сложная наука, использующая самые последние достижения .
успехов!
Поделитесь своими знаниями, ответьте на вопрос:
Заменить в слове одну букву, что бы получить другое слово бег шаг
я если ты с бант коса если что бег бог бор бар бак мак маг шаг