Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.98/41: Рейтинг темы: голосов - 41, средняя оценка - 4.98
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 25
1

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

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

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста решить до 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2013, 13:11
Ответы с готовыми решениями:

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

Задачи на программирование
Доброе время суток! Обязали в школе пройти курсы &quot;Основы программирования для Linux&quot;. Я прошла все...

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

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

3
_
317 / 151 / 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
109 / 107 / 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
0 / 0 / 0
Регистрация: 08.03.2013
Сообщений: 25
20.10.2013, 16:08  [ТС] 4
Это была моя контрольная работа,к сожалению я очень слаб в программировании,поэтому обратился к Вам,пересдача во вторник,может кто ещё что решит. Спасибо всем кто принимал участие.
0
20.10.2013, 16:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.10.2013, 16:08
Помогаю со студенческими работами здесь

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

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

Программирование в MathCAD задачи по сопромату
Ребят помогите составить программный модуль в Mathcad

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru