当前位置:网站首页>[exercise-7] (UVA 10976) fractions again?! (fraction split)
[exercise-7] (UVA 10976) fractions again?! (fraction split)
2022-07-06 15:56:00 【Flame car】
translate :
Enter a positive integer k, Find all positive integers x≥y, bring
1 k = 1 x + 1 y \frac{1}{k}=\frac{1}{x}+\frac{1}{y} k1=x1+y1
This question is also very interesting , Do some advanced calculation :
Since it is required to find all x,y, The enumerated object is naturally x,y 了 . But the problem is , How about the scope of enumeration ? from 1/12=1/156+1/13 It can be seen that ,x Comparable y Much larger . Should we enumerate endlessly ? Of course not. . because x≥y, Yes 1/x ≤1/y, therefore 1/k - 1/y ≤ 1/y, namely y≤2k. This only needs to be done in [k+1,2k] Enumeration in scope y, And then according to y Try to work out x that will do .
( Content from Purple Book )
That's great !
AC Code :
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e5+5;
const ll mod = 1e9+7;
int main()
{
int n;
while(cin>>n && n)
{
int cnt = 0;
for(int i=n+1;i<=2*n;i++)
if((i*n)%(i-n)==0)
cnt++;
cout<<cnt<<endl;
for(int i=n+1;i<=2*n;i++)
if((i*n)%(i-n)==0)
printf("1/%d = 1/%d + 1/%d\n",n,(i*n)/(i-n),i);
}
}
Write directly twice and calculate cnt One side of the output is because I'm too lazy ... There may be simple ways ?? Well, it should be about the same .
The middle judgment idea is like this :1/k = 1/x +1/y, in other words 1/k - 1/y = 1/x Is to meet the conditions .
The left side of the equation is simplified to y/ky - k/ky ==》 (y-k)/yk That is to say, as long as this formula can be reduced to 1/? Is to meet the conditions .
That is to say 1/(yk/(y-k)) The denominator of is an integer . That is to say yk%(y-k) ==0
So we get the formula in the code .
summary :
The problem of this formula , We should use unknown numbers to deduce several new formulas to simplify the problem .
Mainly push formula , If you can't push it out, you'll be finished ...
边栏推荐
- China's earthwork tire market trend report, technical dynamic innovation and market forecast
- 渗透测试 ( 3 ) --- Metasploit Framework ( MSF )
- HDU - 6024 Building Shops(女生赛)
- Cost accounting [19]
- Web based photo digital printing website
- Opencv learning log 16 paperclip count
- Learning record: STM32F103 clock system overview working principle
- Research Report of peripheral venous catheter (pivc) industry - market status analysis and development prospect prediction
- Truck History
- Determine the Photo Position
猜你喜欢
![[exercise-7] crossover answers](/img/66/3dcba2e70a4cd899fbd78ce4d5bea2.png)
[exercise-7] crossover answers

信息安全-威胁检测-NAT日志接入威胁检测平台详细设计

Penetration test (3) -- Metasploit framework (MSF)

Information security - Analysis of security orchestration automation and response (soar) technology

B - 代码派对(女生赛)

TCP的三次握手与四次挥手

【练习-4】(Uva 11988)Broken Keyboard(破损的键盘) ==(链表)

渗透测试 ( 7 ) --- 漏洞扫描工具 Nessus

Learning record: how to perform PWM output

【高老师UML软件建模基础】20级云班课习题答案合集
随机推荐
信息安全-安全专业名称|CVE|RCE|POC|VUL|0DAY
【练习-11】4 Values whose Sum is 0(和为0的4个值)
Opencv learning log 30 -- histogram equalization
Opencv learning log 13 corrosion, expansion, opening and closing operations
[exercise-7] crossover answers
信息安全-史诗级漏洞Log4j的漏洞机理和防范措施
C语言必背代码大全
Accounting regulations and professional ethics [2]
MySQL import database error [err] 1273 - unknown collation: 'utf8mb4_ 0900_ ai_ ci’
【练习-6】(Uva 725)Division(除法)== 暴力
信息安全-威胁检测引擎-常见规则引擎底座性能比较
[exercise-2] (UVA 712) s-trees
Cost accounting [23]
7-1 懂的都懂 (20 分)
Opencv learning log 32 edge extraction
Opencv learning log 19 skin grinding
Learning record: USART serial communication
毕业才知道IT专业大学生毕业前必做的1010件事
渗透测试 ( 7 ) --- 漏洞扫描工具 Nessus
The most complete programming language online API document