Для заданных натуральных чисел N и K требуется вычислить количество чисел от 1 до N, имеющих в двоичной записи ровно K едениц. два натуральных числа через пробел N и K, не превышающие 10^9
Ответы на вопрос
Ответил Вованичикчка
0
// PascalABC.Net
function dec2bin(n: integer): string;
begin
for var c:=31 downto 0 do
Result += IntToStr((N shr c) and 1);
end;
function count(b: string; c: char): integer;
begin
for var i:=1 to length(b) do
if b[i] = c then
Result += 1;
end;
begin
var N:=32;
var K:=3;
var sum:=0;
for var i:=1 to n do
if count(dec2bin(i), '1') = K then
begin
sum += 1;
end;
writeln(sum);
end.
Ответил takenfromtheashes
0
Данная программа не будет заходить по времени. Т.к. ограничение до 10^9.
Новые вопросы
Қазақ тiлi,
2 года назад
Физика,
7 лет назад
История,
7 лет назад
Алгебра,
9 лет назад
Алгебра,
9 лет назад