zoukankan      html  css  js  c++  java
  • codeM美团编程大赛初赛B轮D题(考验你的数学思维!)

    [编程题] 模

    时间限制:1秒
    空间限制:32768K

    给定四个正整数a,b,c,k,回答是否存在一个正整数n,使得a*n在k进制表示下的各位的数值之和模b为c。
    输入描述:
    第一行一个整数T(T <= 5,000)。

    接下来T行,每行四个正整数a,b,c,k(1 ≤ a ≤ 10^18; 2 ≤ k ≤ 10^18; 0 ≤ c < b ≤ 10^18)表示一个询问,所有输入都是十进制的。


    输出描述:
    对于每组数据输出一行,Yes表示存在,No表示不存在。

    输入例子:
    2
    3 9 5 10
    7 3 1 10

    输出例子:
    No
    Yes

    这其实是一道数学题,核心代码为

    下面先上正确代码,证明过程暂时不会,还望各位路过大佬不吝赐教。

     1 #include <iostream>
     2 using namespace std;
     3 
     4 //返回x和y的最大公约数
     5 long long gcd(long long x, long long y)
     6 {
     7     long long z = y;
     8     while(x%y!=0)
     9     {
    10         z = x%y;
    11         x = y;
    12         y = z;
    13     }
    14     return z;
    15 }
    16 
    17 int main()
    18 {
    19     int T;
    20     cin>>T;
    21     while(T--)
    22     {
    23         long long a,b,c,k;
    24         cin>>a>>b>>c>>k;
    25         if(c%gcd(b,gcd(a,k-1))==0)
    26             cout<<"Yes"<<endl;
    27         else
    28             cout<<"No"<<endl;
    29     }
    30     return 0;
    31 }

     这题挺有意思。。。证明过程会及时补充。

     特意备注:扩展欧几里得

     20170627更新,以下是walker大佬的解答

    『注:本文来自博客园“小溪的博客”,若非声明均为原创内容,请勿用于商业用途,转载请注明出处http://www.cnblogs.com/xiaoxi666/』
  • 相关阅读:
    图形与文本
    Cookie处理函数练习
    jspSmartUpload上传下载全攻略
    SmartUpload 上传图片
    无下拉菜单
    servlet中使用SmartUpload组件实现上传
    乱码
    DIV+CSS 要兼容 IE8.0 应注意些什么?
    虚拟目录中的web.config不被上级目录的web.config影响的处理
    ASP.NET抓取页面源代码
  • 原文地址:https://www.cnblogs.com/xiaoxi666/p/7078039.html
Copyright © 2011-2022 走看看