Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];

Вниз

Задача   Найти похожие ветки 

 
ertong   (2003-10-28 19:39) [0]

Вот только что сотрел задачи олимпиады по программированию за 3 последних года. Интересно, что среди "стандартных" задач, можно увидеть нечто оригинальное. Но может, я еще мало "стандартных" задач видел??? Потом не каждая задача дается сразу. Задачи ниже мне все таки не удалось решить. Но решение же есть!!!

Листики.
Прямоугольные листики лежат на столе 100х100 так, что стороны параллельны сторонам стола. Листики могут перекрываться, но не могут быть закрытыми и прикасатся сторонами. Написать программу, чтобы подсчитала минимальное количество листиков, для получения данного многоугольника. Количество углов многоугольника до 20.

P.S. Извиняюсь, возможно, за непонятный перевод с украинского.

Листики 2
Есть N(N<10000) прямоугольников (стороны параллельны осям координат), они имеют разные цвета. На экране рисуют эти прямоугольники по-очериди, начиная с первого. Написать программу, которая подсчитает количество пикселей, которые закрашены в цвет первого прямоугольника.

Коректор
Операции вставки, уничтожения и замены будем называть елементарными. Нужно написать программу для превращения строки S1 в строку S2 за минимальное количество елементарных операций.

Сообщение
З пункта А в пункт В посылается сообщение с симолов 1 и 0. Сообщение послали по двом каналам связи. Хакер Вася перехватил два сообщения и изменил их следующим методом: любую часть сообщения, что имеет две единички переворачивает. И это действие повторяет несколько раз(для разных участков сообщения). Два сообщения обрабатывались независимо. Потом он отправил их в пункт В. Написать программу, которая проверит, можно ли из первого сообщения получить второе, и если можно то какими действиями.

Пример:

REPORT.DAT REPORT.SOL
100011100 YES
001011001 6 9
3 8
1 5

Шифрограмма
С клавиатуры вводится строка, в которой зашифровано действие сложения. Все цифры заменены на буквы, причем одинаковые цифры заменены на одинаковые буквы, разные цифры заменены на разные буквы. Нужно вывести одно из вариантов этой операции сложения.
Пример:
Ввести: ten+ten+forty=sixty
Вывести: 850+850+29786=31486


 
ertong   (2003-10-29 08:29) [1]

up


 
Radionov Alexey   (2003-10-29 08:48) [2]

про "Коректор" - расстояние Левенштейна, кажется. Вещь широко распространенная.


 
stone   (2003-10-29 09:22) [3]


> Нужно написать программу для превращения строки S1 в строку
> S2 за минимальное количество елементарных операций.


S2 = S1; :))


 
LordOfSilence   (2003-10-29 09:34) [4]

2 stone © (29.10.03 09:22) [3]
Смотри, не перепутай! (с) ;-)


 
Думкин   (2003-10-29 09:59) [5]


> stone © (29.10.03 09:22) [3]

:-((
Докажи что сие - есть одна из
> елементарных о -
или слабо?


 
ertong   (2003-10-29 16:52) [6]

2 stone
S2 : = S1;
:)))

2 Radionov Alexey

> расстояние Левенштейна

Ищу ...
Читаю ...


 
ertong   (2003-10-30 07:57) [7]

up


 
Ertong   (2003-10-30 15:45) [8]

up


 
Ertong   (2003-10-31 17:08) [9]


> Шифрограмма

Нашел приемлимое решение. Просто перебрать все перестановки чисел :)
Хотя 10! - это не маленькое число, но алгоритм в несколько секунд вложится.
Сначало я слишком переоценил сложность алгоритма :(

Если кто знает лучше решение то кидайте сюда.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2003.11.24;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
14-79173
Anton.
2003-10-30 12:14
2003.11.24
Слова благодарности


1-78975
Andy
2003-11-14 15:26
2003.11.24
в Edit1.text вводились только русские буквы


3-78853
djon
2003-11-03 15:08
2003.11.24
Ошибка ClientDataSet.ApplyUpdates


1-78996
Silver_
2003-11-10 16:45
2003.11.24
как правельно обратится к обьекту ТАКИМ образом.


3-78849
VitGel
2003-11-03 18:45
2003.11.24
Оперативно-учетная...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский