#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("inline")
#include<bits/stdc++.h>
using namespace std;
#define main dummy_main
int main( ) {
return 0 ;
}
#undef main
class Solution{
public :
int maximumCandies( vector< int > & A, long long K) {
int Nzj9Y0kE;
int bkxOPzPX;
int WKqLrJHZ;
Nzj9Y0kE = 0 ;
bkxOPzPX = 10000000 ;
while ( Nzj9Y0kE < bkxOPzPX) {
if ( ( Nzj9Y0kE + bkxOPzPX) % 2 == 0 ) {
WKqLrJHZ = ( Nzj9Y0kE + bkxOPzPX) / 2 ;
}
else {
WKqLrJHZ = ( Nzj9Y0kE + bkxOPzPX + 1 ) / 2 ;
}
int bs24PFPc;
long long R5MtCiij;
int YGwFZBGH = 0 ;
if ( ( 0 ) > ( ( A.size ( ) ) - 1 ) ) {
R5MtCiij = 0 ;
}
else {
for ( bs24PFPc = 0 ; bs24PFPc <= ( A.size ( ) ) - 1 ; bs24PFPc++ ) {
if ( YGwFZBGH == 0 ) {
R5MtCiij = A[ bs24PFPc] / WKqLrJHZ;
YGwFZBGH = 1 ;
continue ;
}
R5MtCiij + = A[ bs24PFPc] / WKqLrJHZ;
}
if ( YGwFZBGH== 0 ) {
R5MtCiij = 0 ;
}
}
if ( R5MtCiij>= K) {
Nzj9Y0kE = WKqLrJHZ;
}
else {
bkxOPzPX = WKqLrJHZ - 1 ;
}
}
return bkxOPzPX;
}
}
;
// cLay version 20220312-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// class Solution {
// public:
// int maximumCandies(VI& A, ll K) {
// return bsearch_max[int,x,0,1d7](sum[ll][i,0,A.size()](A[i]/x) >= K);
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUoIk9mYXN0IikKI3ByYWdtYSBHQ0Mgb3B0aW1pemUoInVucm9sbC1sb29wcyIpCiNwcmFnbWEgR0NDIG9wdGltaXplKCJpbmxpbmUiKQojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIG1haW4gZHVtbXlfbWFpbgppbnQgbWFpbigpewogIHJldHVybiAwOwp9CiN1bmRlZiBtYWluCmNsYXNzIFNvbHV0aW9uewogIHB1YmxpYzoKICBpbnQgbWF4aW11bUNhbmRpZXModmVjdG9yPGludD4mIEEsIGxvbmcgbG9uZyBLKXsKICAgIGludCBOemo5WTBrRTsKICAgIGludCBia3hPUHpQWDsKICAgIGludCBXS3FMckpIWjsKICAgIE56ajlZMGtFID0gMDsKICAgIGJreE9QelBYID0gMTAwMDAwMDA7CiAgICB3aGlsZShOemo5WTBrRSA8IGJreE9QelBYKXsKICAgICAgaWYoKE56ajlZMGtFICsgYmt4T1B6UFgpJTI9PTApewogICAgICAgIFdLcUxySkhaID0gKE56ajlZMGtFICsgYmt4T1B6UFgpIC8gMjsKICAgICAgfQogICAgICBlbHNlewogICAgICAgIFdLcUxySkhaID0gKE56ajlZMGtFICsgYmt4T1B6UFggKyAxKSAvIDI7CiAgICAgIH0KICAgICAgaW50IGJzMjRQRlBjOwogICAgICBsb25nIGxvbmcgUjVNdENpaWo7CiAgICAgIGludCBZR3dGWkJHSCA9IDA7CiAgICAgIGlmKCgwKSA+ICgoQS5zaXplKCkpLTEpKXsKICAgICAgICBSNU10Q2lpaiA9IDA7CiAgICAgIH0KICAgICAgZWxzZXsKICAgICAgICBmb3IoYnMyNFBGUGMgPSAwOyBiczI0UEZQYyA8PSAoQS5zaXplKCkpLTE7IGJzMjRQRlBjKyspewogICAgICAgICAgaWYoWUd3RlpCR0ggPT0gMCl7CiAgICAgICAgICAgIFI1TXRDaWlqID0gQVticzI0UEZQY10vV0txTHJKSFo7CiAgICAgICAgICAgIFlHd0ZaQkdIID0gMTsKICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICB9CiAgICAgICAgICBSNU10Q2lpaiArPSBBW2JzMjRQRlBjXS9XS3FMckpIWjsKICAgICAgICB9CiAgICAgICAgaWYoWUd3RlpCR0g9PTApewogICAgICAgICAgUjVNdENpaWogPSAwOwogICAgICAgIH0KICAgICAgfQogICAgICBpZihSNU10Q2lpaj49IEspewogICAgICAgIE56ajlZMGtFID0gV0txTHJKSFo7CiAgICAgIH0KICAgICAgZWxzZXsKICAgICAgICBia3hPUHpQWCA9IFdLcUxySkhaIC0gMTsKICAgICAgfQogICAgfQogICAgcmV0dXJuIGJreE9QelBYOwogIH0KfQo7Ci8vIGNMYXkgdmVyc2lvbiAyMDIyMDMxMi0xCgovLyAtLS0gb3JpZ2luYWwgY29kZSAtLS0KLy8gI2RlZmluZSBtYWluIGR1bW15X21haW4KLy8ge30KLy8gI3VuZGVmIG1haW4KLy8gCi8vIGNsYXNzIFNvbHV0aW9uIHsKLy8gcHVibGljOgovLyAgIGludCBtYXhpbXVtQ2FuZGllcyhWSSYgQSwgbGwgSykgewovLyAgICAgcmV0dXJuIGJzZWFyY2hfbWF4W2ludCx4LDAsMWQ3XShzdW1bbGxdW2ksMCxBLnNpemUoKV0oQVtpXS94KSA+PSBLKTsKLy8gICB9Ci8vIH07Cg==