Submission details
Task:Entrepreneur
Sender:hy2025_003
Submission time:2025-09-03 16:47:49 +0300
Language:C++ (C++20)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.00 sdetails
#8ACCEPTED0.16 sdetails
#9ACCEPTED0.17 sdetails
#10ACCEPTED0.17 sdetails
#11ACCEPTED0.00 sdetails
#12ACCEPTED0.00 sdetails
#13ACCEPTED0.00 sdetails
#14ACCEPTED0.00 sdetails
#15ACCEPTED0.00 sdetails

Code

/* ================================ MAKEFILE ===================================
 * CXXFLAGS=-std=c++20 -x c++ -Wall -fsanitize=undefined,address -pipe -g
 * ============================== CLion Setup ==================================
 * Alt F12 Rebind: File >> Setting >> Keymap >> Tool Windows >> Terminal */
// Basic
#include <bits/stdc++.h>                            
using namespace std;
using ll = long long;
const ll oo = *(ll*)"????????";
using vl = vector<ll>;
#define all(c) begin(c),end(c)
#define FOR(i,a,b) for (ll i=(a); i<(b); i++)
#define FORD(i,a,b) for (ll i=ll(b)-1; i>=(a); i--)
// Graphs                    // ============== random numbers =================
using vvl = vector<vl>;      // mt19937 rng($semirandom)
#define pb push_back         // ============== primes =========================
#define sz(c) ll((c).size()) // seq $from $to | factor | grep -v ' .* '
// pll                       // 2^30: +3, +7, +9, +385, -407
using pll = pair<ll,ll>;     // 2^60: +33, +91, +933, -753
using vpll = vector<pll>;  // =============== stress test script ==============
#define xx first           // for((i=1;;++i)); do
#define yy second          //   echo $i
// double                  //   ./gen > in
using dd = double;         //   diff -w <(./A < in) <(./brute < in) || break
const dd eps = 1e-9;       // done

#define TR(X) ({ if(1) cerr << __LINE__ << ": " #X " = " << (X) << endl; })

int main() { 
    cin.sync_with_stdio(0); cin.tie(0); 
    ll n, t; cin >> n >> t;
    vl k(n);
    FOR(i, 0, n){
        cin >> k[i];
    }
    ll lo = 1, hi = oo;
    while(lo < hi){
        ll mid = (lo + hi) / 2;
        __int128 total = 0;
        FOR(i, 0, n){
            total += mid / k[i];
        }
        if(total >= t)
            hi = mid;
        else lo = mid + 1;
    }
    cout << lo << endl;
}

Test details

Test 1

Verdict: ACCEPTED

input
10 10
6 5 1 2 1 5 10 4 6 6

correct output
4

user output
4

Test 2

Verdict: ACCEPTED

input
10 10
6 6 4 3 4 9 3 2 6 10

correct output
6

user output
6

Test 3

Verdict: ACCEPTED

input
10 10
5 4 10 7 8 4 1 8 9 2

correct output
5

user output
5

Test 4

Verdict: ACCEPTED

input
1 1000000000
1

correct output
1000000000

user output
1000000000

Test 5

Verdict: ACCEPTED

input
1 1000000000
1000000000

correct output
1000000000000000000

user output
1000000000000000000

Test 6

Verdict: ACCEPTED

input
1000 1000
271 687 392 992 11 410 702 870...

correct output
223

user output
223

Test 7

Verdict: ACCEPTED

input
1000 1000
598 523 703 794 737 689 724 26...

correct output
282

user output
282

Test 8

Verdict: ACCEPTED

input
200000 1000000000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
5000

user output
5000

Test 9

Verdict: ACCEPTED

input
200000 1
760045594 599341056 300698860 ...

correct output
8214

user output
8214

Test 10

Verdict: ACCEPTED

input
200000 1000000000
33941840 210038922 596070148 7...

correct output
371045814100

user output
371045814100

Test 11

Verdict: ACCEPTED

input
25 1000000000
1000000000 1 1 1 1 1 1 1 1 1 1...

correct output
41666667

user output
41666667

Test 12

Verdict: ACCEPTED

input
12 1000000000
1 1 1 1 1 1 1 1 1 1 1 10000000...

correct output
90909091

user output
90909091

Test 13

Verdict: ACCEPTED

input
23 1000000000
1000000000 1000000000 10000000...

correct output
43478261000000000

user output
43478261000000000

Test 14

Verdict: ACCEPTED

input
23 1000000000
1000000000 1000000000 10000000...

correct output
43478261000000000

user output
43478261000000000

Test 15

Verdict: ACCEPTED

input
3 3
10 11 12

correct output
12

user output
12