fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define ll long long
  5. #define vt vector
  6.  
  7. vt<ll> a;
  8. ll n, m;
  9. bool check(ll x){
  10. if(x < a[n - 1]) return false;
  11.  
  12. ll cnt = 1;
  13. ll sum = 0;
  14. for(ll v : a){
  15. if(v > x) return false;
  16.  
  17. if(sum + v > x){
  18. cnt++;
  19. sum = v;
  20. }
  21. else{
  22. sum += v;
  23. }
  24. }
  25.  
  26. return cnt <= m;
  27. }
  28.  
  29. int main(){
  30. ios::sync_with_stdio(0);
  31. cin.tie(0);
  32.  
  33. // freopen("ZXY.INP", "r", stdin);
  34. // froepen("ZXY.OUT", "w", stdout);
  35.  
  36. cin >> n >> m;
  37.  
  38. a.resize(n);
  39. for(ll &x : a) cin >> x;
  40.  
  41. sort(a.begin(), a.end());
  42.  
  43. ll l = 0, r = 1e18;
  44. while(l < r){
  45. ll mid = l + (r - l) / 2;
  46.  
  47. if(check(mid)){
  48. r = mid;
  49. }
  50. else{
  51. l = mid + 1;
  52. }
  53. }
  54.  
  55. cout << l;
  56. }
Success #stdin #stdout 0s 5316KB
stdin
1009 426
1084 684 1890 492 978 1853 792 1401 104 479 1885 154 293 275 1278 555 1557 1734 1412 1547 646 1449 1870 1751 1452 66 892 1823 452 1614 1053 64 1530 629 1016 1658 2 815 1332 1411 375 470 1876 752 652 1670 1296 779 209 1018 2011 1843 289 1855 969 871 1103 451 1213 1608 1765 676 155 1225 881 832 178 1531 1468 516 1887 1793 595 1751 931 1323 1824 75 801 152 411 1234 1502 1359 1993 65 732 398 798 846 604 1407 507 1859 1870 289 1404 189 986 494 691 911 217 1794 544 1448 1062 369 1789 1183 1090 475 158 552 1458 1449 2014 1963 1117 1151 798 1545 1859 1413 838 1940 1864 1248 1332 180 1520 294 820 838 1940 1687 6 427 369 731 1273 923 270 917 901 304 601 1656 1267 306 1391 358 1369 430 1362 6 1585 135 202 567 1303 931 561 1824 1115 1002 1507 269 210 699 54 2000 185 1705 847 1771 1984 468 1711 768 433 286 1664 404 185 564 616 1443 184 1563 774 1308 421 1214 376 1287 601 34 171 919 1809 322 864 415 1178 306 1076 218 254 1588 1063 1432 1395 985 1351 565 401 1635 673 1156 1428 619 1776 924 293 1425 377 185 2003 1982 29 1406 1905 138 1654 691 995 1422 59 617 57 1894 149 449 129 851 714 182 1618 1981 1647 1417 1702 1729 233 490 1950 1664 1540 225 1659 174 1040 623 583 493 824 636 1718 563 1294 1718 1130 280 967 496 1985 196 855 1157 366 1560 1761 663 134 137 1506 1046 1815 1060 351 441 1246 466 1417 406 1388 1441 1894 1917 1539 1736 2014 316 136 1781 544 422 352 1294 1705 842 194 998 1280 237 35 1980 273 139 348 1519 1971 1612 1047 492 1751 156 278 140 916 1892 913 719 1833 766 278 1523 70 1397 1449 1749 482 109 999 43 1076 144 1500 271 1084 377 1955 1480 59 206 1110 1863 1939 1259 710 470 1079 242 439 1789 151 1911 626 1834 1815 1338 113 1608 244 379 1243 1609 1083 1659 157 1998 1744 1837 1434 46 1465 106 1630 2001 1764 651 1049 1878 1085 409 962 1574 767 64 258 608 1544 1925 934 1721 954 56 734 1199 1362 1360 528 924 421 143 1079 1017 957 1847 1026 289 216 705 145 919 236 564 1550 1545 735 632 1232 443 141 1587 678 1445 1786 108 343 1515 461 69 1228 269 643 396 1654 1269 1019 213 940 955 783 1944 791 1927 939 722 1901 136 1505 1976 1954 561 1111 1074 1829 943 1314 1470 1326 349 608 1412 1594 1659 1208 269 849 837 124 381 1720 1154 106 238 1265 189 149 45 995 147 760 502 358 1332 974 1341 1539 799 1937 1584 905 672 501 1722 631 1570 797 1435 294 900 1388 1201 1843 386 286 653 1196 307 424 1073 934 762 1640 653 335 231 886 1151 1244 487 842 453 728 69 19 1099 662 360 377 1019 1627 1286 455 1250 1086 1074 1672 1110 789 915 1366 23 610 535 1496 1844 208 1932 14 530 506 861 99 1604 1964 819 1567 1483 601 829 1278 244 335 946 590 466 912 1546 1996 651 640 831 206 1963 1557 458 544 2014 1280 1682 1204 1727 1627 1665 1080 1514 1653 1255 82 504 86 627 1638 301 1521 1994 87 1490 909 459 1756 301 288 498 1694 640 1035 1373 1378 608 245 391 1753 282 45 566 1969 1242 876 1911 711 611 1018 807 1879 426 1062 1634 1879 255 434 929 1336 572 1775 1020 1192 1153 490 507 1865 1169 336 688 1103 1552 1049 74 252 1812 1578 429 1041 1962 1406 1305 1346 1358 414 1290 1914 971 1580 923 422 24 36 612 142 1795 1609 1566 1195 1634 653 195 1794 49 2004 625 1373 755 234 1650 317 504 1042 466 1671 346 939 1992 1256 79 57 1327 1566 734 1538 651 1549 1161 751 990 940 1540 304 1333 919 1158 1477 1541 954 1721 716 986 1366 461 1403 517 1770 1137 448 1878 38 1819 848 379 1048 1293 67 1637 1530 72 953 257 919 872 319 1512 1650 960 298 1510 1511 736 1908 1530 29 1364 1132 71 926 530 212 230 1014 646 1589 1253 609 1791 1042 1759 1703 709 21 691 1896 736 1251 1405 749 834 501 604 1892 1957 1060 985 1782 1414 1135 1623 1762 1342 1988 551 909 830 1121 439 1196 846 176 732 352 1425 423 1444 1821 1145 4 1770 2017 927 1769 857 247 481 1958 214 117 652 447 1561 1214 1842 422 1911 611 890 545 1959 185 599 1739 569 303 1356 836 1132 69 1698 500 2012 350 151 1529 1651 1627 1455 804 264 1237 1345 1901 1209 36 1419 160 491 70 131 149 1035 210 178 876 1831 949 901 1139 715 1853 1958 1092 1139 1814 1659 1392 676 777 1544 238 733 1283 1546 405 203 1367 870 1814 1208 1861 80 847 422 1774 1752 1766 1710 271 285 398 1098 645 1554 615 1903 876 357 1192 181 401 1890 1942 440 1516 1054 722 618 59 575 1864 31 992 72 340 1762 169 1022 1961 1037 1849 1955 1960 531 269 559 309 1564 1736 488 1972 1680 967 1683 876 789 1780 1989 1705 438 1898 1937 834 1665 1724 1184 29 969 563 1147 1036 1886 1795 1072 1244 670 1938 170 1899 646 1605 1504 399 581 1292 658 651 1829 27 142 434 1529 446 1811 1170 334 755 763 1463 1493 415 836 1448 1803 1341 1651 1986 1573 596 11 1058 
stdout
3254