首页 > 其他分享 > Codeforces Round #828 (Div. 3)

Codeforces Round #828 (Div. 3)

时间:2022-10-30 16:15:02浏览次数:71  
标签:10 1000000000 Codeforces times leq 828 Div 倍数

题目链接

Codeforces Round #828 (Div.3)

Divisible Numbers (hard version)

题目描述

给出四个整数 \(a, b, c, d\), 请你构造一对整数 \((x, y)\), 满足:

  • \(a < x\leq c\), \(b<y\leq d\)

  • \(x\times y\) 是 \(a \times b\) 的倍数

若不存在,输出 \(-1\)

数据范围:

简单版:\(1\leq a < c \leq 10^5, 1\leq b<d\leq 10^5\)

困难版:\(1\leq a < c \leq 10^9, 1\leq b<d\leq 10^9\)

其中,单个测试点中包含不超过 \(10\) 组数据

样例 #1

样例输入 #1

10
1 1 2 2
3 4 5 7
8 9 15 18
12 21 14 24
36 60 48 66
1024 729 373248 730
1024 729 373247 730
5040 40320 40319 1000000000
999999999 999999999 1000000000 1000000000
268435456 268435456 1000000000 1000000000

样例输出 #1

2 2
4 6
12 12
-1 -1
-1 -1
373248 730
-1 -1
15120 53760
-1 -1
536870912 536870912

解题思路

思维

简单版主要是枚举 \(x\),然后要使 \(x\times y\) 是 \(a\times b\) 的倍数,则 \(y\) 应该是 \(a\times gcd(a\times b,x)\) 的倍数,然后范围内判断是否存在这样的倍数即可,困难版由于数据范围的原因不能直接枚举 \(x\),观察可知:\(y\) 要是 \(a\times gcd(a\times b,x)\) 的倍数,这里 \(gcd(a\times b,x)\) 一定是 \(a\times b\) 的约数,只用枚举约数即可,然后即可解出 \(y\),同理,解出 \(y\) 后同样的方法解出 \(x\)

  • 时间复杂度:\(O(1600\times 1600\times log(10^9))\)

标签:10,1000000000,Codeforces,times,leq,828,Div,倍数
From: https://www.cnblogs.com/zyyun/p/16841484.html

相关文章

  • Codeforces Round #831 (Div. 1 + Div. 2)
    CodeforcesRound#831(Div.1+Div.2)1.Problem-D-Codeforces首先是一个结论就是如果除了起点终点以外你发现只要是还多一个格子你是可以把所有牌都任意移动的。......
  • SET DECIMAL_V2=FALSE及UDF ERROR: Cannot divide decimal by zero及Incompatible ret
    概述最近在全职负责一款数据产品的升级改造。因旧版平台的代码写得太乱,简直惨不忍睹;别说增加功能,已有问题的定位与修复都无从下手。用户提交的,在旧版平台能执行的SQL语句,在......
  • Codeforces Round #831 (Div. 1 + Div. 2) E
    E.HangingHearts我们观察每一个节点它可以由其子节点的所有长链来构造还有就是直接可以由自己构成的一条长链所以对于每一个节点我们的答案就是max(加上自己的最长链......
  • Codeforces Round #831 (Div. 1 + Div. 2)
    A.FactoriseN+M题意:给出一个质数,求另一个质数,使得两个数之和不是质数。解:把那个质数再输出一遍就行了。B.JumboExtraCheese2题意:给出一些长方形,按照以下规则把长......
  • Codeforces Round #750 (Div. 2) F1
    F1.KorneyKorneevichandXOR(easyversion)我们观察题意发现我们需要找的是一个上升序列我们回忆上升序列的状态设计dp[i]表示第i个作为结尾最长的序列长度是多少......
  • Educational Codeforces Round 93 (Rated for Div. 2) D
    D.ColoredRectangles考虑数据范围显然可以n3dp我们发现dp转移时不是特别好枚举所以我们选择记忆化搜索打完你们可能会发现过不去第三个样例显然我们应该sort一遍......
  • Codeforces Round #827 (Div. 4) A-G
    比赛链接A题解知识点:模拟。时间复杂度\(O(1)\)空间复杂度\(O(1)\)代码#include<bits/stdc++.h>#definelllonglongusingnamespacestd;boolsolve(){......
  • Educational Codeforces Round 1
    EducationalCodeforcesRound1C.Nearestvectors题目大意给出n个向量,求出其中夹角最小的两个向量。分析求出所有向量与x轴的夹角,然后排序,两两比较夹角。AC_code#......
  • Codeforces Round #826 (Div. 3) A-E
    比赛链接A题解知识点:模拟。时间复杂度\(O(n)\)空间复杂度\(O(n)\)代码#include<bits/stdc++.h>#definelllonglongusingnamespacestd;boolsolve(){......
  • Codeforces Round #830 (Div. 2)(持续更新)
    PrefaceAB很水,C一般难度,D1很简单但D2确实巧妙没有现场打有点可惜,后面补的时候都是1A(结果每次比赛的时候都要莫名WA上好久)A.Bestie我刚开始没咋想,感觉操作步数不会很......