Помогите плз) Надобно написать программку на любом ПаскалеПрограммист на Северном полюсе

Помогите плз) Надобно написать программу на любом Паскале


Программер на Северном полюсе работал за компом в варежках и потому мог набирать только 0 и 1, а кнопка 0 запала. Сможет ли он набрать число, состоящее только из единиц и при этом кратное данному N?


Входные данные

Программе дано число N (1 N 10^6).


Выходные данные

Вывести малое число, удволетворяющее требованию, или "NO" , если такового числа не существует.


Если что, это 1453 задачка на Информатиксе

Задать свой вопрос
2 ответа

//PascalABC.NET

//В задачке есть ограничение по медли в 1 секунду

//потому была применена функция milliseconds

//которая отдаёт кол-во миллисекунд с момента

//начала работы программки

var

 N, cur, count: uint64;

begin

 read(N);

 cur := 1;

 count := 0;

 while (cur lt;gt; 0) and (milliseconds() / 1000 lt; 0.78) do

 begin

   cur := (cur * 10 + 1) mod N;  

   count := count + 1;

 end;

 if (cur = 0) then write('1' * (count = 1 ? count : count + 1))

 else write('NO');

end.

Oleg Rodriges Alonson
А какая версия паскаля?
Ольга Уарова
хз я в информатикс заливаю
Артем Капитайкин
https://informatics.mccme.ru/mod/statements/view3.php?chapterid=14531
Артём Янкин
Там есть компилятор Free Pascal 3.0.2, а есть PascalABC 3.4.2
Кутерева Виолетта
Мое решение проверялось под Free Pascal, но и на PascalABC тоже входит.
Анастасия
ок, щас проверю
Бутлерова Злата
да все работает
Алеша
сори дексель
Лариса Голосеина
как перевыбрать превосходнейший ответ?
Ивницкий Юрик
А вот никак))

Ответ:

Код дан в приложении.

Объяснение:

Поддерживать само число на паскале будет достаточно трудно без использования biginteger. Будем поддерживать k - количество единиц в нашем числе, и ans - остаток от деления нашего числа на N. Если он в какой-то момент вышел равен нулю, это значит, что мы отыскали число. В нем k единиц. Мы будем продолжать поиски 3 * 10 раз. Если так ничего и не отыскали - выводим NO.

, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт