15.07.2010, 05:53 | |
Ответы с готовыми решениями:
1272
Элементарные программы, для лучшего понимания языка... Задачи для тренировки и лучшего понимания языка Литература для лучшего понимания сути программирования Набор задачь для тренировки и улучшения понимания программирования |
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 01:25 | 321 |
Lavroff, класс String из задания не имеет оператора +=. В том то и прикол.
В этом же куске кода p=p+' '; на каждой итерации происходит создание новой строки и присваивание, что в общем дает асимптотику O(n^2). Для n = миллион это очень много.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
30.07.2010, 01:37 [ТС] | 322 | |||||
А такую задачу чисто теоретически реально сделать рекурсией или это просто не нужно?
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
30.07.2010, 01:38 | 323 |
Хохол, ваш вариант для миллиона не работает, проблема в условиях цикла.
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 01:39 | 324 |
CyBOSSeR, почему не работает? Не понимаю.
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
30.07.2010, 01:39 | 325 |
Lavroff, нужно использовать только операторы приведенные в задаче. И это не std::string.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 01:41 [ТС] | 326 |
CyBOSSeR, Я знаю оО. Я впринципе спросил. Делаю на подручных материалах, а под рукой только std::string.
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 01:42 | 327 |
CyBOSSeR, точно не работает.
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|||||||||||
30.07.2010, 01:44 | 328 | ||||||||||
Хохол, проблема в условиях цикла, при i равном 27 программа вылетает на строке:
Lavroff, вот реализация:
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
||||||
30.07.2010, 01:46 | 329 | |||||
CyBOSSeR, да уж, тупанул я.
Вот:
2
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
30.07.2010, 01:58 | 330 |
Хохол
Задача решена оптимально. Но код можно чуть облагородить.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 01:59 [ТС] | 331 |
CyBOSSeR, Пасую решать. Знаний не хватает. С кодом разобраться не могу. Но спасибо за задачу.
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 01:59 | 332 |
Lavroff, почитай про быстрое возведение в степень - поймешь.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 02:02 [ТС] | 333 |
Хохол, Не с вашим кодом. А с кодом реализации. Слишком много несоответствий с данной задачей.
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 02:02 | 334 |
CyBOSSeR, можно образчик облагороженного кода? Мне в голову приходит лишь убирание одного (1<<i).
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
||||||
30.07.2010, 02:04 | 335 | |||||
Хохол
Чуть облагорожен:
1
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 02:13 [ТС] | 336 |
А еще интересные задачки будут?)) Олимпиадные - не катят что-т. А вот хотелось бы таких задачек, где решение нестандартное, и задачка сама по себе интересная. По одному или более аспектам
0
|
2347 / 1720 / 148
Регистрация: 06.03.2009
Сообщений: 3,675
|
||||||
30.07.2010, 02:23 | 337 | |||||
Lavroff, не задача, но все же.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 02:31 [ТС] | 338 |
Низзя так присваивать.
Можно вот так: int j = (++i)++; j будет равно 6.
0
|
476 / 444 / 34
Регистрация: 20.11.2009
Сообщений: 1,293
|
|
30.07.2010, 02:34 | 339 |
О_о почему это компилится и как оно работает?
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
30.07.2010, 02:36 [ТС] | 340 |
Хохол, М... Мы используем инкремент ++i, его мы ставим в скобках, за ним ++. j присваивается значение одного инкремента, то есть 6 в данном случае, затем i инкрементируется еще раз. i=7;j=6.
Быть может оно не должно так работать - и такая операция вызывает неопределенное поведение... Но мне кажется все верно...
0
|
30.07.2010, 02:36 | |
30.07.2010, 02:36 | |
Помогаю со студенческими работами здесь
340
Проверить на правильность и закомментировать весь код для лучшего понимания Нужны задачи для тренировки Нужны задачи для тренировки Нужны задачи для тренировки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |