"""
https://www.lanqiao.cn/problems/3404/learning/?page=1&first_category_id=1&problem_id=3404
"""
n, m, k = map(int, input().split())
left, right = 1, n * m
# x合法: 小于等于x的个数至少为k个
def check(x):
# cnt统计n * m 矩阵中有多少个元素小于等于x
cnt = 0
for i in range(1, n + 1):
# 统计每一行有多少个数小于等于x
cnt += min(m, x // i)
return cnt >= k
ans = 0
while left <= right:
mid = (left + right) // 2
if check(mid):
ans = mid
right = mid - 1
else:
left = mid + 1
print(ans)
蓝桥杯-肖恩的乘法表
最新推荐文章于 2024-07-18 19:36:20 发布