Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. Так никто и не решил эту задачу ? я сделал, ее засчитала система. при ручном подсчете я вижу что она считает не правильно. как сделать не знаю. всяко перепробовал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2015, 21:08 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Короче, думаю спустя такое время можно выложить один из вариантов решения. Оно в итоге было принято (пришлось, правда, здорово урезать язык), но с какой-то стати расходу памяти ему больше мегабайта насчитали: кто собирается решать сам - сюда не тыкатьДа, да, в коде остались некоторые артефакты вроде int l2=1;...l2=2, не говоря уже о местах объявления переменных, но чистить лень. Код: plaintext 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2015, 08:38 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
gera3323, зачем переменным типа int в параметрах функции вы применяете квалификатор const ? Повторите ваш код с комментариями к функциям, пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2015, 01:52 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
А можно все сообщения переместить в один топик ? Зачем два создали, gera3323 ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2015, 02:46 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Проверьте, у меня нет учетной записи на том ресурсе. Кстати, судя по тестовым примерам, строки могут пересекаться. Код: plaintext 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 03:05 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
wst, посмотрел сейчас ваш код, не стал сильно вникать, но судя по всему алгоритмы похожи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 03:50 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
SashaMercury, Алгоритмы действительно основаны на одной идее, но есть один момент: Код: plaintext 1. 2. - memory leak, однако. И по условиям задачи номер строки и подстрока для поиска читаются из стандартного ввода, так что или "+odd%2" - слишком смелое предположение в общем случае или безусловное присваивание "odd=0". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.06.2015, 08:56 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
wstSashaMercury, Алгоритмы действительно основаны на одной идее, но есть один момент: Код: plaintext 1. 2. - memory leak, однако. И по условиям задачи номер строки и подстрока для поиска читаются из стандартного ввода, так что или "+odd%2" - слишком смелое предположение в общем случае или безусловное присваивание "odd=0". Утечка тут в том, что в конце программы я не освободил память. Что легко устраняется. Комментарий относительно odd не понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 02:49 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
SashaMercury Утечка тут в том, что в конце программы я не освободил память. Что легко устраняется. Комментарий относительно odd не понял Ок, хотелось бы увидеть пример как "в конце программы" освободить память, выделенную для f[0].s? Насчет odd повторюсь - "...подстрока для поиска читаются из стандартного ввода". Примеры для тестирования: AB, BA, BB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 08:54 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Согласен с замечанием :) Тогда так. Код: plaintext 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. odd это просто вспомогательная переменная. Для подсчёта в том случае, когда подстрока встречается в циклической строке. Потому не понимаю в чём проблема ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 10:17 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Если рассматривать как задачу поиск только подстроки "bbabab", то с odd все правильно, однако исходная задача была более общая и допускает необходимость поиска подстрок, которые будут появляться в местах склейки не на нечетных шага, а на четных. Пример с AB, BB, BA - как раз к тому что у этих трех подстрок разные условия образования в местах склеивания. Если дополнительная BA не появляется нигде (все строки кроме первой начинаются с B), то две другие получаются на разных по четности номера итерациях. В последнем же варианте кода подстроки, появляющиеся на четных итерациях будут обработаны в ветке Код: plaintext 1. 2. 3. 4. 5. 6. 7. , то есть некорретно. То есть в текущей логике odd сам по себе используется корректно, но сам способ прихода в эту ветку не вполне корректен в общем случае. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 10:46 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
wst, теперь приблизительно понятно что вы мне хотите сказать. odd название условное, обратите внимание, что все циклы идут по одной переменной i, потому повторения в местах склейки будут считаться как на чётных, так и на нечётных позициях. Ну если я и сейчас неправ, то приведите контрпример пожалуйста, я его внимательно изучу. Спасибо :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 11:02 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
На то, что циклы в конце начинаются с i я до сих пор не обращал внимания, возражения снимаются, был неправ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 11:11 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Хорошо, спасибо за замечания:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.06.2015, 11:33 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Вот спрошу о рекурсии без новой темы. Прочитал на днях что использование рекурсии для чисел фибоначчи может привести к зависанию програмы уже для числа n=100, если использовать типовую формулу: int fib(int n) { if n<2 return 1; return fib(n-1) + fib(n-2); } и была предложена в начале какая то невиданная для меня формула if (0==numbers[n] {numbers[n]= Fib[n-1] + Fib[n-2]; } return numbers[n]; Как это 0== ... и та же рекурсия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.08.2017, 23:13 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
stutВот спрошу о рекурсии без новой темы. Прочитал на днях что использование рекурсии для чисел фибоначчи может привести к зависанию програмы уже для числа n=100, если использовать типовую формулу: int fib(int n) { if n<2 return 1; return fib(n-1) + fib(n-2); } и была предложена в начале какая то невиданная для меня формула if (0==numbers[n] {numbers[n]= Fib[n-1] + Fib[n-2]; } return numbers[n]; Как это 0== ... и та же рекурсия? 0 в левой части, поскольку используется одна из практик для предотвращения непреднамеренного присваивания. Здесь ленивая динамика, предварительно все элементы массива инициализируются SMTH_DEFAULT_VALUE, на второй итерации рассчитываются все элементы вплоть до требуемого n, либо это таблица формируется заранее. Линейное время О(n), никакой рекурсии, никаких деревьев ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.08.2017, 23:10 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
SashaMercury, а что реально зависает програма расчета рекурсии? Не в одном учебнике этот подход приведеный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.08.2017, 16:37 |
|
||
|
Строки Фибоначчи
|
|||
|---|---|---|---|
|
#18+
Возможно речь идет о рекурсии "с хвостиком" ?. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2017, 00:03 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=25&tid=2018106]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
51ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 265ms |
| total: | 438ms |

| 0 / 0 |
