zoukankan      html  css  js  c++  java
  • Codeforces Round #636 A. Candies(水)

    Recently Vova found nn candy wrappers. He remembers that he bought xx candies during the first day, 2x2x candies during the second day, 4x4x candies during the third day, … , 2k1x2k−1x candies during the kk -th day. But there is an issue: Vova remembers neither xx nor kk but he is sure that xx and kk are positive integers and k>1k>1 .

    Vova will be satisfied if you tell him any positive integer xx so there is an integer k>1k>1 that x+2x+4x++2k1x=nx+2x+4x+⋯+2k−1x=n . It is guaranteed that at least one solution exists. Note that k>1k>1 .

    You have to answer tt independent test cases.

    Input

    The first line of the input contains one integer tt (1t1041≤t≤104 ) — the number of test cases. Then tt test cases follow.

    The only line of the test case contains one integer nn (3n1093≤n≤109 ) — the number of candy wrappers Vova found. It is guaranteed that there is some positive integer xx and integer k>1k>1 that x+2x+4x++2k1x=nx+2x+4x+⋯+2k−1x=n .

    Output

    Print one integer — any positive integer value of xx so there is an integer k>1k>1 that x+2x+4x++2k1x=nx+2x+4x+⋯+2k−1x=n .

    Example
    Input
    Copy
    7
    3
    6
    7
    21
    28
    999999999
    999999984
    
    Output
    Copy
    1
    2
    1
    7
    4
    333333333
    333333328
    高中题。。
    #include <bits/stdc++.h>
    using namespace std;
    int fpow(int a,int b)
    {
        int ans=1;
        for(;b;b>>=1)
        {
            if(b&1)ans*=a;
            a*=a;
        } 
        return ans;
    } 
    int main()
    {
        int t;
        cin>>t;
        while(t--)
        {
            int n,k,i;
            cin>>n;
            for(k=2;;k++)
            {
                if(n%(fpow(2,k)-1)==0)
                 {
                     cout<<n/(fpow(2,k)-1)<<endl;
                     break;
                }
            }
        }
        return 0;
    }


  • 相关阅读:
    00005-js 获取uuid
    00004-form 表单的清空、重置 (jquery)
    使用Socket进行通信
    使用ServerSocket创建TCP服务器端
    TCP协议基础
    基于TCP协议的网络通信
    3D MAX在立方体的使用
    应用纹理贴图
    使用OpenGL ES绘制3D图形
    GL10控制图形旋转
  • 原文地址:https://www.cnblogs.com/lipoicyclic/p/12749849.html
Copyright © 2011-2022 走看看