某公司部门需要派遣员工去国外做项目。现在,代号为x的国家和代号为y的国家分别需要cntx名和cnty名员工。部门每个员工有一个员工号(1,2,3......),工号连续从1开始。
部长派遣员工的规则:
规则1、从[1,k]中选择员工派遣出去。
规则2、编号为x的倍数的员工不能去x国,编号为y的倍数的员工不能去y国
问题:
找到最小的k,使得可以将编号在[1,k]中的员工分配给x国和y国,且满足x国和y国的需求
输入描述:
四个整数x,y,cntx,cnty。(2 <= x < y <= 30000;x和y一定是质数1<=cntx,cnty<10^9; cntx+cnty<=10^9)
输出描述:
满足条件的最小的K,
示例1 输入输出示例仅供调试,后台判题数据一般不包含示例
输入
2 3 3 1
输出
5
说明
输入说明: 2-表示国家代号2 3-表示国家代号3 3-表示国家2需要3个人 1-表示国家3需要1个人
Java版本
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
int cnt = calc