欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

E - Fractions Gym - 102058E (暴力)

程序员文章站 2022-06-08 12:35:52
...

About 44 days are left before College Scholastic Ability Test is held. This exam aims to measure students' achievement of National Curriculum standards and scholastic ability required for college education. (http://www.kice.re.kr/sub/info.do?m=0205&s=english)

One of the subjects covered by this test is Mathematics, which consists of 21 multiple choice questions and 9 short-answer questions. The answer of each short-answer question is guaranteed to be a unique positive integer below 1 000, as you can see from the answer sheet below.

E - Fractions Gym - 102058E (暴力)

However, the organizers might want to give students short-answer questions with non-integer answers, such as 23–√23 or 5353. Usually, the workaround is to write the answer in a canonical form, and then sum up all the integers inside that form and ask students to write that number instead.

In particular, when the answer is a positive rational number abab, the organizers usually ask students to reduce it and sum up the numerator and the denominator of the reduced fraction. For example, when the answer is 18101810, the student should reduce it to 9595 and write the final answer as 9+5=149+5=14.

E - Fractions Gym - 102058E (暴力)

However, when the answer is 521500521500, the reduced fraction is also 521500521500, so the student should write the final answer as 521+500=1021521+500=1021. But this shouldn't happen, since all the answers for the short-answer questions are below 1 000. To avoid this situation, the organizers should make sure that after reducing the fraction, the sum of the numerator and the denominator shouldn't exceed 999999. Let's call such fractions as Suneung Fractions. For example, 1996219962 and 18101810 are Suneung fractions, while 1998219982 and 521500521500 are not.

Suppose that, this year, one of the organizers wrote a problem, and the answer to that problem is xyxy. Since the problem is not finalized yet, the only thing we know is A≤x≤BA≤x≤B and C≤y≤DC≤y≤D holds, for given A,B,C,DA,B,C,D. The organizers want to know, among all the pairs (x,y)(x,y), how many of xyxy is a Suneung fraction. Write a program that counts this number.

Input

The first and only line contains four space-separated integers A,B,CA,B,C and DD (1≤A≤B≤10121≤A≤B≤1012, 1≤C≤D≤10121≤C≤D≤1012)

Output

Print the number of integral pairs (x,y)(x,y) (A≤x≤BA≤x≤B, C≤y≤DC≤y≤D), where xyxy is a Suneung fraction.

Examples

Input

5 8 3 6

Output

16

Input

2018 2019 2018 2019

Output

2

//Full of love and hope for life

#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <queue>
#define inf 0x3f3f3f3f
//https://paste.ubuntu.com/
//https://www.cnblogs.com/zzrturist/    //博客园
//https://blog.csdn.net/qq_44134712     //csdn

using namespace std;

typedef long long ll;
const ll maxn=1e7+10;

int main(){
    ll a,b,c,d,ans=0;
    cin >> a >> b >> c >> d;
    for(ll i=1;i<=999;i++){
        for(ll j=1;j<=999;j++){
            if(i+j<=999&&__gcd(i,j)==1){
                ll a1=a/i;
                ll a2=b/i;
                ll b1=c/j;
                ll b2=d/j;
                if(a%i==0){
                    a1--;
                }
                if(c%j==0){
                    b1--;
                }
                if(min(a2,b2)-max(a1,b1)>0){
                    ans+=(min(a2,b2)-max(a1,b1));
                }
            }
        }
    }
    cout << ans;
    return 0;
}

 

相关标签: 训练