import java.util.concurrent.ThreadLocalRandom; public class Main { static int[] priceTable = new int[11]; for (int i = 0; i < 50; i++) { for (int j = 0; j < priceTable.length; j++) { priceTable[j] = ThreadLocalRandom.current().nextInt(100); } for (int k = 0; k < 10; k++) { } } } public static int cormenCutRod(int lenght) { if (lenght == 0) { return 0; } int q = 0; for (int i = 1; i <= lenght; i++) { q = max(q, priceTable[i] + cormenCutRod(lenght - i)); } return q; } static int cutRodM(int lenght) { int[] mem = new int[lenght + 1]; mem[0] = 0; int i, j; // filling the table bottom up for (i = 1; i <= lenght; i++) { int q = 0; for (j = 1; j <= i; j++) q = max(q, priceTable[j] + mem[i - j]); mem[i] = q; } return mem[lenght]; } }
Standard input is empty
0 - 0 35 - 35 70 - 70 105 - 105 140 - 140 175 - 175 210 - 210 245 - 245 280 - 280 315 - 315 0 - 0 8 - 8 50 - 50 58 - 58 100 - 100 108 - 108 150 - 150 158 - 158 200 - 200 208 - 208 0 - 0 65 - 65 130 - 130 195 - 195 260 - 260 325 - 325 390 - 390 455 - 455 520 - 520 585 - 585 0 - 0 66 - 66 132 - 132 198 - 198 264 - 264 330 - 330 396 - 396 462 - 462 528 - 528 594 - 594 0 - 0 37 - 37 97 - 97 134 - 134 194 - 194 231 - 231 291 - 291 328 - 328 388 - 388 425 - 425 0 - 0 75 - 75 150 - 150 225 - 225 300 - 300 375 - 375 450 - 450 525 - 525 600 - 600 675 - 675 0 - 0 48 - 48 96 - 96 144 - 144 192 - 192 240 - 240 288 - 288 336 - 336 384 - 384 432 - 432 0 - 0 23 - 23 65 - 65 88 - 88 130 - 130 153 - 153 195 - 195 218 - 218 260 - 260 283 - 283 0 - 0 2 - 2 29 - 29 31 - 31 58 - 58 60 - 60 87 - 87 89 - 89 116 - 116 118 - 118 0 - 0 83 - 83 166 - 166 249 - 249 332 - 332 415 - 415 498 - 498 581 - 581 664 - 664 747 - 747 0 - 0 89 - 89 178 - 178 267 - 267 356 - 356 445 - 445 534 - 534 623 - 623 712 - 712 801 - 801 0 - 0 48 - 48 96 - 96 144 - 144 192 - 192 240 - 240 288 - 288 336 - 336 384 - 384 432 - 432 0 - 0 67 - 67 134 - 134 201 - 201 268 - 268 335 - 335 402 - 402 469 - 469 536 - 536 603 - 603 0 - 0 22 - 22 82 - 82 104 - 104 164 - 164 186 - 186 246 - 246 268 - 268 328 - 328 350 - 350 0 - 0 38 - 38 76 - 76 114 - 114 152 - 152 190 - 190 228 - 228 266 - 266 304 - 304 342 - 342 0 - 0 17 - 17 85 - 85 102 - 102 170 - 170 187 - 187 255 - 255 272 - 272 340 - 340 357 - 357 0 - 0 11 - 11 59 - 59 70 - 70 118 - 118 129 - 129 177 - 177 188 - 188 236 - 236 247 - 247 0 - 0 35 - 35 92 - 92 127 - 127 184 - 184 219 - 219 276 - 276 311 - 311 368 - 368 403 - 403 0 - 0 14 - 14 50 - 50 74 - 74 100 - 100 124 - 124 150 - 150 174 - 174 200 - 200 224 - 224 0 - 0 22 - 22 94 - 94 116 - 116 188 - 188 210 - 210 282 - 282 304 - 304 376 - 376 398 - 398 0 - 0 74 - 74 148 - 148 222 - 222 296 - 296 370 - 370 444 - 444 518 - 518 592 - 592 666 - 666 0 - 0 29 - 29 58 - 58 87 - 87 116 - 116 145 - 145 174 - 174 203 - 203 232 - 232 261 - 261 0 - 0 77 - 77 154 - 154 231 - 231 308 - 308 385 - 385 462 - 462 539 - 539 616 - 616 693 - 693 0 - 0 16 - 16 32 - 32 64 - 64 80 - 80 96 - 96 128 - 128 144 - 144 160 - 160 192 - 192 0 - 0 80 - 80 160 - 160 240 - 240 320 - 320 400 - 400 480 - 480 560 - 560 640 - 640 720 - 720 0 - 0 11 - 11 58 - 58 69 - 69 116 - 116 127 - 127 174 - 174 185 - 185 232 - 232 243 - 243 0 - 0 4 - 4 8 - 8 14 - 14 93 - 93 97 - 97 101 - 101 107 - 107 186 - 186 190 - 190 0 - 0 2 - 2 44 - 44 64 - 64 88 - 88 108 - 108 132 - 132 152 - 152 176 - 176 196 - 196 0 - 0 34 - 34 68 - 68 102 - 102 136 - 136 170 - 170 204 - 204 238 - 238 272 - 272 306 - 306 0 - 0 72 - 72 144 - 144 216 - 216 288 - 288 360 - 360 432 - 432 504 - 504 576 - 576 648 - 648 0 - 0 70 - 70 140 - 140 210 - 210 280 - 280 350 - 350 420 - 420 490 - 490 560 - 560 630 - 630 0 - 0 95 - 95 190 - 190 285 - 285 380 - 380 475 - 475 570 - 570 665 - 665 760 - 760 855 - 855 0 - 0 47 - 47 94 - 94 141 - 141 188 - 188 235 - 235 282 - 282 329 - 329 376 - 376 423 - 423 0 - 0 23 - 23 46 - 46 69 - 69 94 - 94 117 - 117 140 - 140 163 - 163 188 - 188 211 - 211 0 - 0 41 - 41 82 - 82 123 - 123 164 - 164 205 - 205 246 - 246 287 - 287 328 - 328 369 - 369 0 - 0 79 - 79 158 - 158 237 - 237 316 - 316 395 - 395 474 - 474 553 - 553 632 - 632 711 - 711 0 - 0 68 - 68 136 - 136 204 - 204 272 - 272 340 - 340 408 - 408 476 - 476 544 - 544 612 - 612 0 - 0 93 - 93 186 - 186 279 - 279 372 - 372 465 - 465 558 - 558 651 - 651 744 - 744 837 - 837 0 - 0 75 - 75 150 - 150 225 - 225 300 - 300 375 - 375 450 - 450 525 - 525 600 - 600 675 - 675 0 - 0 67 - 67 134 - 134 201 - 201 268 - 268 335 - 335 402 - 402 469 - 469 536 - 536 603 - 603 0 - 0 77 - 77 154 - 154 231 - 231 308 - 308 385 - 385 462 - 462 539 - 539 616 - 616 693 - 693 0 - 0 59 - 59 118 - 118 177 - 177 236 - 236 295 - 295 354 - 354 413 - 413 472 - 472 531 - 531 0 - 0 40 - 40 80 - 80 120 - 120 160 - 160 200 - 200 240 - 240 280 - 280 320 - 320 360 - 360 0 - 0 3 - 3 58 - 58 61 - 61 116 - 116 119 - 119 174 - 174 177 - 177 232 - 232 235 - 235 0 - 0 68 - 68 136 - 136 204 - 204 272 - 272 340 - 340 408 - 408 476 - 476 544 - 544 612 - 612 0 - 0 91 - 91 182 - 182 273 - 273 364 - 364 455 - 455 546 - 546 637 - 637 728 - 728 819 - 819 0 - 0 80 - 80 160 - 160 240 - 240 320 - 320 400 - 400 480 - 480 560 - 560 640 - 640 720 - 720 0 - 0 50 - 50 100 - 100 150 - 150 200 - 200 250 - 250 300 - 300 350 - 350 400 - 400 450 - 450 0 - 0 55 - 55 110 - 110 165 - 165 220 - 220 275 - 275 330 - 330 385 - 385 440 - 440 495 - 495 0 - 0 75 - 75 150 - 150 225 - 225 300 - 300 375 - 375 450 - 450 525 - 525 600 - 600 675 - 675