#include <iostream>
#include <queue>
#define MAX 35002
using namespace std;
queue<int> q;
//queue<int> result;
long long n;
long long k;
long long answer;
void find(long long start, long long end) {
if (start >= end) return;
auto middle = (start + end) /2;
auto cnt = 0;
for (auto i=1; i<=n; i++){
cnt += min( n,middle/i);
}
if (cnt >= k){
answer = middle;
find(start, middle);
}else {
find(middle+1, end);
}
}
int main() {
cin.tie(NULL);
ios::sync_with_stdio(false);
cin >> n >> k;
find(0, min( n*n+1, 1000000000LL) +1);
cout << answer;
return 0;
}