0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 75
|
||||||
1 | ||||||
Библиотеки на олимпиадах02.08.2013, 18:28. Показов 8018. Ответов 29
Метки нет (Все метки)
Я собираюсь участвовать в олимпиаде по информатике(Украина). Я использую Microsoft Visual C++ 2010 Express. На олимпиадах, как я знаю часто используюn намного ранние версии этой программы. Скажите пожалуйста, есть ли запрещенные библиотеки на олимпиадах, такие как #include<getch>. Есть ли все библиотеки Microsoft Visual C++ 2010 Express например Microsoft Visual C++ 6.0 и более ранних. Мне это нужно знать, так как я использую такие библиотеки:
0
|
02.08.2013, 18:28 | |
Ответы с готовыми решениями:
29
Какой компилятор используется на олимпиадах Четверо студентов на олимпиадах Путин: на Олимпиадах надо не «потеть», а «побеждать» про библиотеки в VS C++ (какие библиотеки нужны для функций 'cout' и 'cin') |
02.08.2013, 18:40 | 2 |
если ты не способен что-то сделать без библиотеки <algorithm>, тебе бесполезно решать олимпиадные задачи.
Т.к. <algorithm> содержит довольно примитивные алгоритмы, которым легко найти замену.
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
02.08.2013, 18:52 | 3 |
Что касается getch, то её даже смысла нет запрещать, потому что если стандартный ввод будет из файла, а ты используешь getch, то прога просто повиснет и отвалится по time limit или даже по idleness time limit.
Не по теме: Вот этим Pascal и лучше, что там нет таких вещей в стандартной библиотеке... Добавлено через 1 минуту Да, не обратил внимания сначала... #include <getch>
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
02.08.2013, 18:54 | 5 |
Нету стандартной библиотеки с алгоритмами. Поэтому те, кто начинают олимпиадное программирование с Паскаля, умеют написать хотя бы бинпоиск и хоть какую сортировку. А кто начинает с C++...
2
|
02.08.2013, 19:02 | 6 |
Ну так ведь и начинать надо грамотно! Зачем вообще начинать с алгоритмов, если шаблоны не знаешь?
Зачем начинать с шаблонов, если с нешаблонными функциями управиться не можешь? Зачем пользоваться какими-то библиотеками, если циклы освоить не можешь?
1
|
0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 75
|
|
02.08.2013, 19:43 [ТС] | 7 |
Но не стоит изобретать велосипед. Да, я понимаю, что лучше бы мне тот самый qsort выучить, но так как у меня учителя нет, а выучить много нужно, я просто выучил реализацию этого алгоритма стандартными библиотеками.
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
02.08.2013, 19:54 | 8 |
0
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
|
02.08.2013, 19:57 | 10 |
дело в том, что в библиотеке реализованы алгоритмы в первозданном виде... в задачах же очень часто требуется вносить дополнения в самое "нутро"...
в плане более-менее сложных алгоритмов <algorithm> помочь может разве что sort()-ом. главное его преимущество в том, что код можно уменьшить и сделать читабельнее. я, например, очень люблю использовать fill(), reverse(), использую count(), min/max_element()... просто очень удобно.
0
|
0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 75
|
||||||
02.08.2013, 20:15 [ТС] | 11 | |||||
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
02.08.2013, 20:21 | 12 |
0
|
32 / 32 / 3
Регистрация: 04.04.2010
Сообщений: 414
|
|
02.08.2013, 21:55 | 14 |
А может кто пояснить этот алгоритм? Не особо врубился как он сравнивает...
1
|
9 / 8 / 2
Регистрация: 02.05.2012
Сообщений: 92
|
|
02.08.2013, 21:57 | 15 |
wwmwwm, На олимпиадах все библиотеки, указаные в теме разрешены, так что не боись, и участвуй, и удачи тебе
1
|
0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 75
|
||||||
03.08.2013, 00:52 [ТС] | 16 | |||||
Почему. Это же qsort, который упорядычивает массив по возрастанию. Потом в компататоре мы указываем название массива, количество элементов в нем, тип массива, и в конце название функции которую я написал на форуме. Вот так:
0
|
What a waste!
1608 / 1300 / 180
Регистрация: 21.04.2012
Сообщений: 2,729
|
|
03.08.2013, 02:48 | 17 |
0
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
03.08.2013, 11:45 | 18 |
Потому что при вычитании может быть переполнение.
Добавлено через 3 минуты Ещё, думаю, если const void*, то по-хорошему надо const int*. А такой код с вычитанием и на cppreference.com, и на cplusplus.com.
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
03.08.2013, 11:56 | 19 |
А что в ней «опасного» и «беспонтового»? Кроме того, что const void * приводится не к const int *?
Стандартная функция сравнения чисел для qsort. Добавлено через 1 минуту Второй аргумент qsort — это размер массива. Добавлено через 3 минуты Ну, говорить о том, кто лучше знает элементарные алгоритмы — бесполезно, т.к. объективной статистики нет и не может быть, а твоя выборка — нерепрезентативна. Кстати, на региональных (как минимум) турах ACM ICPC тот же qsort и bsearch разрешены. А вот time почему-то нет.
1
|
2835 / 1644 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
03.08.2013, 12:17 | 20 |
Если задача такая, что со временем находится более хорошее решение и в какой-то момент оно становится окончательным, то вместо математической границы поиска можно использовать временную. Помню, в Turbo Pascal'е использовали longint absolute 0:$46c. Видимо, посчитали, что это слишком халявно...
0
|
03.08.2013, 12:17 | |
03.08.2013, 12:17 | |
Помогаю со студенческими работами здесь
20
Как посмотреть какие библиотеки тянут другие библиотеки процесса Подключение библиотеки Crypto. Если возможно, нужна ссылка на скачивание данной библиотеки Как включить библиотеки в исполняемый файл, чтобы не приходилось ставить библиотеки (Eclipse) Создание dll библиотеки в C#. Вызов классов этой библиотеки Приложения не видят библиотеки библиотеки Visual C++ Теория, библиотеки, динамические библиотеки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |