T319839 [2022第十三届蓝桥杯青少年组省赛] 最大值

题目背景

第十三届蓝桥杯青少年组省赛2022年4月C++组第4题

题目描述

手工课上老师拿出 N 张长方形彩纸,且每张彩纸上都画着 W\*H 的网格(网格铺满整张彩纸)。现在老师将 N 张彩纸裁剪出 K 张大小相同的正方形,并且要使裁剪出的正方形的边长最大(裁剪的正方形边长必须为整数)。 例如:N = 2,有 2 张彩纸,第一张彩纸 W = 4,H = 3;第二张彩纸 W = 5,H = 4;K = 6,裁剪的 6 个正方形边长最大是 2。 ![](https://cdn.luogu.com.cn/upload/image_hosting/80kb1gzs.png) 当给出 N 张长方形彩纸 W 和 H,及 K 的值,请计算出将 N 张彩纸裁剪出 K 张大小相同的正方形,正方形的边长最大是多少(裁剪的正方形边长必须为整数)。

输入格式

第一行输入两个正整数 $N,K (1 < N < 100,1 < K < 100)$,N 表示彩纸数量,K 表示需裁剪的正方形数量,两个正整数之间一个空格隔开; 第二行开始,输入 N 行,每行输入两个正整数 $Wi,Hi (1 < Wi < 1000,1 < Hi < 1000,且 Wi ≠ Hi)$,Wi表示彩纸的长度,Hi表示彩纸的宽度,两个正整数之间一个空格隔开。

输出格式

输出一个正整数,表示将 N 张彩纸裁剪出 K 张大小相同的正方形的边长最大是多少(裁剪的正方形边长必须为整数),如果不能裁剪出 K 张正方形就输出“-1”。