//Вот на Pascal, если поможет (да и раз уж можно (комменты:) )), я пытался написать на С, но есть неразрешимая для меня проблема, я ж его не изучал) Ну, в общем, попробуйте переписать на С)
var
s, k: string;
begin
readln(s);
foreach c: char in s do
if not (Char.isDigit(c) or Char.IsLetter(c)) then
if (pos(c, k) = 0) then
k := k + c;
writeln(length(k));
<span>end.
=====================
</span>
Var
s1,s2,s3,s4:string;
k:integer;
begin
writeln('Введите 1 слово:');
readln(s1);
writeln('Введите 2 слово:');
readln(s2);
writeln('Введите 3 слово:');
readln(s3);
writeln('Введите 4 слово:');
readln(s4);
writeln('Список одинаковых слов');
if (s1=s2)or(s1=s3)or(s1=s4) then begin k:=1; writeln(s1); end;
if (s2=s3)or(s2=s4) then begin k:=1; writeln(s2); end;
if s3=s4 then begin k:=1; writeln(s3); end;
if k=0 then writeln('Одинаковых слов нет');
end.
Сообщение племени Мульти занимает 4 * 120 = 460 бит (потому что 16 = )
Сообщение племени Пульти занимает 5 * 96 = 480 бит (потому что 32 = )<span>Ответ: сообщение племени Пульти больше сообщения от племени Мульти на 20 бит. </span>
11010011-21211-в троичной(11010011(2)=1*2(0)+1*2(1)+0*2(2)+0*2(3)+1*2(4)+0*2(5)+1*2(6)+1*2(7)=211(10)
далее из десятичной в троичную
211/3 остаток 1 ответ 1
70/3 1 и 1
23/3 2 2
7/3 1 1
2/3 2 2
в итоге ответ 21211
Пример:
10010
с конца
0-количество двоек в 0 степени, т. е. единиц
1- количество двоек в первой степени, собственно, двоек
0-количество двоек в 2 степени, т. е 4ерок
0-количество двоек в 3 степени
1-количество двоек в 4 степени, т. е. 16
ТЕПЕРЬ берём каждый разряд, возводим двойку в нужную степень и умножаем на 0 или единицу
<span>1*0+2*1+4*0+8*0+16*1=0+2+0+0+16=18</span>