Здавалка
Главная | Обратная связь

C. Последовательность

А. Золотая рыбка

Файл входных данных: input.txt

Файл выходных данных: output.txt

Ограничение по времени: 1 секунда

 

Старуха хочет, чтобы у нее было больше корыт, чем у всех остальных людей в мире, вместе взятых. Для этого она неоднократно посылает старика к Золотой рыбке за новыми корытами. Результатом встречи старика с рыбкой становится увеличение количества старухиных корыт на такое число, которое превышает текущее количество корыт на одно. Например, если бы у старухи было 5 корыт, то после похода старика их стало бы 5+(5+1) = 11 корыт.

Напишите программу, определяющую количество старухиных корыт после заданного числа встреч старика с рыбкой. Считается, что перед первым походом старика к рыбке, у старухи не было новых корыт. Программа должна выводить количество в двоичной системе счисления.

Формат входных данных:

В файле входных данных находится единственное целое положительное число N (2<=N<=200) – количество встреч старика и рыбки.

Формат выходных данных:

В единственной строке файла выходных данных должна содержаться двоичная запись количества корыт у старухи после заданного числа встреч старика и рыбки без ведущих нулей в начале строки. Файл выходных данных не должен содержать никаких символов кроме «0» и «1».

Пример входных и выходных данных:

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

 


var

n,i:longint;

begin

assign(input,'input.txt');

assign(output,'output.txt');

reset(input);

rewrite(output);

read(n);

for i:=1 to n do

write('1');

close(input);

close(output);

end.



 

B. Цифровой баян

Файл входных данных: input.txt

Файл выходных данных: output.txt

Ограничение по времени: 1 секунда

Петя и Вася играют в цифровой баян. Для этого один из них записывает целое положительное число N (1<=N<=109) на доске, после чего мальчики по очереди делают ходы, которые нумеруются с единицы (если Петя записал число, то второй ход Васи будет иметь номер 3). Учитель предложил Пете и Васе нотную запись для цифрового баяна – последовательность нулей и единиц. Если в последовательности встречается «0», то мех цифрового баяна надо сжимать и тот, кто делает очередной ход, стирает слева и справа по одной цифре числа, если длина числа строго больше двух цифр, при меньшей длине на своем ходе мальчик ничего не делает. Если в последовательности встречается «1», то мех цифрового баяна нужно разжимать, и тот, кто делает ход, записывает слева первую цифру номера хода, а справа – последнюю цифру номера хода, если длина числа не превышает семи цифр, при большей длине он ничего не делает.

Напишите программу, определяющую, что должно быть записано на доске после исполнения по заданному начальному числу и тексту пьесы для цифрового баяна.

Формат входных данных:

В первой строке файла входных данных содержится число N (1<=N<=109), записанное на доске перед началом исполнения пьесы. Во второй строке файла входных данных приведена строка длиной не более 200, состоящая из символов «0» и «1», описывающая текст пьесы.

Формат файла выходных данных:

В файле выходных данных необходимо вывести то, что осталось на доске после исполнения пьесы, причем известно, что первая цифра этого остатка не равна нулю.

Пример входных и выходных данных:

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

 


var

s1,s2:string;

i:longint;

function firstdigit(n:longint):char;

begin

while n>9 do

n:=n div 10;

firstdigit:=chr(ord('0')+n);

end;

function lastdigit(n:longint):char;

begin

n:=n mod 10;

if n<0 then n:=n+10;

lastdigit:=chr(ord('0')+n);

end;

begin

assign(input,'input.txt');

assign(output,'output.txt');

reset(input);

rewrite(output);

readln(s1);

readln(s2);

for i:=1 to length(s2) do

if s2[i]='0' then

if length(s1)>2 then

begin

delete(s1,1,1);

delete(s1,length(s1),1);

end

else

else

if length(s1)<8 then

s1:=firstdigit(i)+s1+lastdigit(i);

writeln(s1);

close(input);

close(output);

end.



 

C. Последовательность

Файл входных данных: input.txt

Файл выходных данных: output.txt

Ограничение по времени: 1 секунда

Чтобы узнать ответ на интересующий ее вопрос, имеющий 10 вариантов ответа, Марина придумала следующее. Она загадывает число N (1<=N<=106), после чего записывает в тетради число 1, затем много раз приписывает к нему справа число, соответствующее сумме всех цифр числа в тетради. В качестве ответа на вопрос Марина выбирает цифру, получившуюся на N-й позиции в соответствующей последовательности цифр.

Напишите программу, которая по заданному числу N определяет, какая цифра будет в соответствующей позиции последовательности Марины.

Формат входных данных:

В единственной строке файла входных данных приведено целое положительное число N (1<=N<=106), которое загадала Марина.

Формат выходных данных:

В единственной строке файла выходных данных необходимо вывести единственную цифру, стоящую в последовательности Марины под номером N.

Пример входных и выходных данных:

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

 

 


var

l,i,prevsum,sum,n:longint;

tmps:string;

function digitsum(num:longint):longint;

var

tmp:longint;

begin

tmp:=0;

while num>0 do

begin

tmp:=tmp+num mod 10;

num:=num div 10;

end;

digitsum:=tmp;

end;

begin

assign(input,'input.txt');

assign(output,'output.txt');

reset(input);

rewrite(output);

readln(n);

prevsum:=0;

sum:=1;

l:=1;

while l<n do

begin

str(sum,tmps);

l:=l+length(tmps);

prevsum:=sum;

sum:=sum+digitsum(sum);

end;

if n=1 then

write('1')

else

write(tmps[n+length(tmps)-l]);

close(input);

close(output);

end.



 

D. Список

Файл входных данных: input.txt

Файл выходных данных: output.txt

Ограничение по времени: 1 секунда

Ференц составляет список, пункты которого обозначаются прописными буквами английского алфавита. Когда добавляется пункт Z), следующим пунктом будет AA), затем BB) и т.д. до ZZ), за которым следуют AAA), BBB), и т.д.

Напишите программу, которая по буквенному обозначению элемента списка определяет номер этого пункта при нумерации, начинающейся с 1.

Формат входных данных:

В единственной строке файла входных данных содержится не более 200 прописных символов английского алфавита, обозначающих элемент списка Ференца.

Формат выходных данных:

В единственной строке файла выходных данных необходимо вывести единственное число – номер элемента, при нумерации, начинающейся с 1.

Пример входных и выходных данных:

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

 

 

var

s:string;

num:longint;

begin

assign(input,'input.txt');

assign(output,'output.txt');

reset(input);

rewrite(output);

readln(s);

num:=26*(length(s)-1)+ord(s[1])-ord('A')+1;

write(num);

close(input);

close(output);

end.


 





©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.