H(1946): A Rational Sequence

Description

An infinite full binary tree labeled by positive rational numbers is defined by:

  • The label of the root is 1/1.
  • The left child of label p/q is p/(p+q).
  • The right child of label p/q is (p+q)/q.

The top of the tree is shown in the following figure:
H
A rational sequence is defined by doing a level order (breadth first) traversal of the tree (indicated by the light dashed line). So that:

F(1)=1/1,F(2)=1/2,F(3)=2/1,F(4)=1/3,F(5)=3/2,F(6)=2/3,F(1)=1/1,F(2)=1/2,F(3)=2/1,F(4)=1/3,F(5)=3/2,F(6)=2/3,…

Write a program to compute the nth element of the sequence, F(n). Does this problem sound familiar? Well it should! But we changed it a little!

Input

The first line of input contains a single integer P, (1 <= P <= 1000), which is the number of data sets that follow. Each data set should be processed identically and independently.
Each data set consists of a single line of input. It contains the data set number, K, and the index, N, of the sequence element to compute (1 <= N <= 2147483647).

Output

For each data set there is a single line of output. It contains the data set number, K, followed by a single space which is then followed by the numerator of the fraction, followed immediately by a forward slash (‘/’) followed immediately by the denominator of the fraction. Inputs will be chosen so neither the numerator nor the denominator will overflow an 32-bit unsigned integer.

Sample Input

4
1 1
2 4
3 11
4 1431655765

Sample Output

1 1/1
2 1/3
3 5/2

4 2178309/1346269

#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int a[1005],dp[5005];
void add(int n,int &l,int &r){
    if(n==1){
        l=r=1;
        return;
    }
    int ll,rr;
    add(n/2,ll,rr);
    if(n%2) l=ll+rr,r=rr;
    else    l=ll,r=ll+rr;
}
int main(){
    int n,m,tmp;scanf("%d",&n);
    while(n--){
        cin>>tmp>>m;
        int l,r;
        add(m,l,r);
        cout<<tmp<<" "<<l<<"/"<<r<<endl;
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章