fork download
  1. program ideone;
  2. var
  3. SnipeK, Malfple, Muscles, Yopee: integer;
  4. Moiz : array [1..1000000] of integer;
  5. begin
  6. readln(SnipeK);
  7. Yopee := 0;
  8. for Malfple := 1 to SnipeK do
  9. Moiz[Malfple] := 0;
  10. for Malfple := SnipeK downto 1 do
  11. begin
  12. if (Moiz[Malfple] = 0) then
  13. begin
  14. Yopee := Yopee + 1;
  15. Muscles := Malfple div 2;
  16. while (Muscles > 0) do
  17. begin
  18. Moiz[Muscles] := 1;
  19. Muscles := Muscles div 2;
  20. end;
  21. end;
  22. end;
  23. writeln(Yopee);
  24. end.
Success #stdin #stdout 0s 2288KB
stdin
2017
stdout
1009