|
|
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
Эту задачу я решал на собеседовании на работу, но вчем ошибка была не сказали. Решить и написать прогу на си-подобном синтаксисе Вот задача Одному торговцу редкими экзотическими фруктами необходимо посетить 30 рынков. У него имеется 3 мешка, в каждый из которых помещается не более 30 плодов. При посещении рынка в качестве торговой пошлины необходимо заплатить по одному плоду из каждого непустого мешка. Плоды можно перекладывать из мешка в мешок(для оптимизации) Если изначально у торговца было 90 плодов, то сколько их останется после посещения всех 30 рынков? Написать программу выводящую наибольшее кол-во плодов которое могло бы остаться Мой ответ 22 плода расписал им: поситили 1 рынок осталось 29+29+29; 2 28+28+28 осталось 3 27+27+27осталось 4 26+26+26осталось 5 25+25+25осталось 6 24+24+24 7 23+23+23 8 22+22+22 9 21+21+21 10 20+20+20 11 19+19+19 12 18+18+18 13 17+17+17 14 16+16+16 15 15+15+15 = 30+15 тут мы 3й мешок можем освободить 16 29+14 17 28+13 18 27+12 19 26+11 20 25+10 21 24+9 22 23+8 нельзя еще переложить 23 22+7 перекдадываем в один мешок остается 29 24 28 25 27 26 26 27 25 28 24 29 23 30 22 Сделать программу выводящую результат решения этой задачи. Моя программа int b1=30; int b2 =30; int b3 = 30; for(int i=0;i<30;i++){ if((b1>15)&&(b2>15)&&(b3>15)){ b1--; b2--; b3--; } else if((b1==15) && (b2==15) && (b3==15)){ b1=b2+b3; b1--; b2--; } else if ((b1>22)&&(b2>7)){ b1--; b2--; } else if((b1<=22)&&(b2<=7)){ b1=b1+b2; b1--; } else if(b1<=28){ b1--; } } System.out.println(b1); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 17:26 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
SRVdudko, 25 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 17:38 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
это треш какой-то, не программа. Где алгоритмы, хоть какие-то зачатки масштабируемости, универсальности, Код: sql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 18:50 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
так немного читабельнее (проще для понимания): Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 20:24 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
а так еще ближе к самодокументированному коду: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 20:41 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
SRVdudko, если перекладывать частями --оствток 24 303030292929128282822727273262626425252552424246232323722222282121219202020103030переклад2929112828122727132626142525152424162323172222182121192020201919211818221717231616241515переклад25302926282727282629253024остатокрынок23 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 20:59 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
ПЕНСИОНЕРКА, таки 25! а в моём коде для ясности третью снизу строку заменить на Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 21:32 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
ПЕНСИОНЕРКА, 25. За 10 рынков освобождаем первый мешок, за 15 - второй, и остаётся лишиться ещё 5 штук за 5 оставшихся рынков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2013, 11:20 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
Даааа... какой я быдлокодер. Пойду наверно начинать с азов алгоритмов. Лагман и s_q_r_t Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2013, 13:21 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
Ну поскольку в условии "Плоды можно перекладывать из мешка в мешок(для оптимизации)" и ничего не сказано о том когда можно перекладывать на 10-м можно отдать только 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2013, 17:33 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
DarkMasterSRVdudko, 25 Проверил опытным путем Таки да, 25 Код: 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2013, 17:17 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
m7mНу поскольку в условии "Плоды можно перекладывать из мешка в мешок(для оптимизации)" и ничего не сказано о том когда можно перекладывать на 10-м можно отдать только 2 В данном случае, я совсем не прав ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2013, 18:29 |
|
||
|
Как проще можно было написать программу
|
|||
|---|---|---|---|
|
#18+
А зачем столько вложенных циклов в shifbags если достаточно посчитать сумму сколько в них всего итемов и потом Код: plaintext 1. При условии что до подсчета сумм переполнения в сумках не было результат получится корректным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2013, 22:18 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38500572&tid=1341537]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
153ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 471ms |

| 0 / 0 |
