Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/10: Рейтинг темы: голосов - 10, средняя оценка - 5.00
николай 1990
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 25
1

Задачи на программирование

20.10.2013, 13:11. Просмотров 1956. Ответов 3
Метки нет (Все метки)

Помогите пожалуйста решить до 14.00 дня


Лимит времени 1000/1000/1000/1000 мс. Лимит памяти 64000/64000/64000/64000 Кб.

Мюллер много раз пытался поймать Штирлица с поличным, но тот всё время выкручивался. Как-то раз Штирлиц просматривал электронную почту. В это время незаметно вошел Мюллер и увидел, как у него на экране появился бессмысленный набор символов. «Шифровка», — подумал Мюллер. «UTF-8», — подумал Штирлиц.
Известно, что Штирлиц шифрует текст следующим образом:
1. Убирает все пробелы и знаки препинания.
2. Заменяет все подряд идущие одинаковые буквы на одну такую букву.
3. Многократно вставляет в произвольное место текста две одинаковых буквы.
Попробуйте восстановить текст, каким он был после второго шага.

Ввод
В единственной строке записана шифровка Штирлица, состоящая из строчных латинских букв. Длина шифровки не превосходит 200000.

Вывод
Выведите восстановленный текст.

Ввод
wwstdaadierfflitzzz
Вывод
stierlitz








Лимит времени 1000/1000/1000/1000 мс. Лимит памяти 64000/64000/64000/64000 Кб.

Стол для монобильярда, установленный в игровом доме уездного города N, оказался очень прибыльным вложением. До того, как в городе появился небезызвестный господин Чичиков. Раз за разом он выигрывал, и хозяин, подсчитывая убытки, понимал, что дело тут нечисто. Однако уличить подлеца в жульничестве не удавалось до прибытия в город N ревизора из Петербурга.
Правила игры в монобильярд очень просты: нужно последовательно закатить в единственную лузу шары с номерами 1, 2, …, N (именно в этом порядке). Пока господин Чичиков играл, ревизор несколько раз подходил к столу и забирал из лузы последний закатившийся туда шар. В конце концов, оказалось, что Чичиков закатил в лузу все шары, а ревизор все шары достал и обследовал. Аферист утверждал, что закатил шары в правильном порядке. Хозяин понял, что это его шанс: ревизор должен помнить, в каком порядке он доставал шары. Однако так ли легко будет доказать жульничество?

Ввод
В первой строке записано целое число N — количество бильярдных шаров (1 ≤ N ≤ 100000). В следующих N строках даны номера этих шаров в том порядке, в котором ревизор забирал их из лузы.

Вывод
Выведите слово «Cheater», если Чичиков не мог закатить все N шаров в правильном порядке. Иначе выведите «Not a proof».

Ввод 1 Ввод 2
2
2
1
3
3
1
2
Вывод 1 Вывод 2
Not a proof
Cheater





Лимит времени 1000/1000/1000/1000 мс. Лимит памяти 64000/64000/64000/64000 Кб.

Предположим, что на планете Земля n городов, в которых есть такси. Любители статистики подсчитали для каждого из этих городов, сколько человек перевезено такси этого города за последний год. Из этих данных была составлена таблица, в которой города были отсортированы по алфавиту. Позже выяснилось, что для статистики названия городов несущественны, и тогда их просто заменили числами от 1 до n. Поисковая система, работающая с этими данными, должна уметь быстро отвечать на вопрос, есть ли среди городов с номерами от l до r такой, что за год такси этого города перевезли ровно x человек. Вам предстоит реализовать этот модуль системы.

Ввод
В первой строке дано целое число n, 0 < n < 70000. В следующей строке приведены статистические данные в виде списка целых чисел через пробел, i-е число в этом списке — количество человек, перевезенных за год такси i-го города. Все числа в списке положительны и не превосходят 109 − 1. В третьей строке дано количество запросов q, 0 < q < 70000. В следующих q строках перечислены запросы. Каждый запрос — это тройка целых чисел l, r и x, записанных через пробел; 1 ≤ l ≤ r ≤ n; 0 < x < 109.

Вывод
Выведите строку длины q, в которой i-й символ равен «1», если ответ на i-й запрос утвердителен, и «0» в противном случае.

Ввод
5
1234567 666666 3141593 666666 4343434
5
1 5 3141593
1 5 578202
2 4 666666
4 4 7135610
1 1 1234567
Вывод
10101
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2013, 13:11
Ответы с готовыми решениями:

Программирование (с++) решение задачи
Помогите составить пожалуста программу вычисления 99 факториала нечётных чисел...

Выбор кафедры в дальнейшей жизни: прикладное программирование VS системное программирование
Сразу извиняюсь что очень не по теме но всё же лучшего форума для этого вопроса...

Разбор сетевой задачи из книги (линейное программирование): "эквивалентные задачи"
Здравствуйте! Изучаю книгу Х. Таха: &quot;Введение в исследование операций&quot;. ...

Задачи на программирование
Помогите с решением. Учусь на заочке и по информатике задали кр, где маткад для...

Задачи на программирование
Привет всем! Помоги пожалуйста с программированием в MatCAD Вот задание: 1)...

3
ya_noob
_
315 / 149 / 27
Регистрация: 08.10.2011
Сообщений: 432
20.10.2013, 15:14 2
Цитата Сообщение от николай 1990 Посмотреть сообщение
Помогите пожалуйста решить до 14.00 дня
Какой стимул решать для вас эти задачи к назначенному сроку?

Цитата Сообщение от николай 1990 Посмотреть сообщение
Лимит времени 1000/1000/1000/1000 мс. Лимит памяти 64000/64000/64000/64000 Кб.
1000/1000/1000/1000 мс = 1 наносекунда
64000/64000/64000/64000 Кб = 0,2 нанобайта !!!

Ну нихрена себе ограничения!!! что у вас за компы такие?!
0
Hoottie_McGOOB
107 / 105 / 44
Регистрация: 04.10.2013
Сообщений: 231
20.10.2013, 15:50 3
это Штирлиц.. без времени и памяти.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
 
    string s="waawstvdaadvierfflitzzzzzzzzzzzzz";
    vector<char>psz;
    for(int i=0; i<s.size(); i++)
        psz.push_back(*(s.begin()+i));
 
    for(int i=0; i<psz.size(); i++)
        cout<<psz[i];
    
    cout<<endl;
 
    bool was_del = false;
 
    do
    {       
        was_del = false;
        for(int i = 1; i<psz.size(); i++)
            if(psz[i]==psz[i-1])
            {
                for(int j=i-1; j<psz.size()-2; j++)
                {
                    psz[j]=psz[j+2];
                }
                was_del=true;
                i--;
                psz.pop_back();
                psz.pop_back();
            }
    }while(was_del);    
            
    for(int i=0; i<psz.size(); i++ )
        cout<<psz[i];
 
    cout<<endl;
 
     system("pause");
     return 0;
       
}
0
николай 1990
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 25
20.10.2013, 16:08  [ТС] 4
Это была моя контрольная работа,к сожалению я очень слаб в программировании,поэтому обратился к Вам,пересдача во вторник,может кто ещё что решит. Спасибо всем кто принимал участие.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.10.2013, 16:08

Задачи на параллельное программирование
Преподаватель дал следующие задачи: Задание 1. Программирование конвейера. ...

Нужны задачи на параллельное программирование
Курсовая по пар. программированию.. Не могу придумать задачи, точнее не знаю...

Функциональное программирование, задачи на Haskell
Ребята, буду очень признателен, если сможете помочь. С функциональным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru