zoukankan      html  css  js  c++  java
  • hdu 5690(模运算)

    All X

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
    Total Submission(s): 1076    Accepted Submission(s): 510


    Problem Description
    F(x,m) 代表一个全是由数字x组成的m位数字。请计算,以下式子是否成立:

    F(x,m) mod k  c
     
    Input
    第一行一个整数T,表示T组数据。
    每组测试数据占一行,包含四个数字x,m,k,c

    1x9

    1m1010

    0c<k10,000
     
    Output
    对于每组数据,输出两行:
    第一行输出:"Case #i:"。i代表第i组测试数据。
    第二行输出“Yes” 或者 “No”,代表四个数字,是否能够满足题目中给的公式。
     
    Sample Input
    3 1 3 5 2 1 3 5 1 3 5 99 69
     
    Sample Output
    Case #1: No Case #2: Yes Case #3: Yes
    Hint
    对于第一组测试数据:111 mod 5 = 1,公式不成立,所以答案是”No”,而第二组测试数据中满足如上公式,所以答案是 “Yes”。
     
    Source
     
    没弄数学专题结果百度之星被这题卡了。。
    (a/b)%mod = (a)%(b*mod)/b%mod 懂了这个完全就是水题。
    #include <stdio.h>
    #include <string.h>
    #include <algorithm>
    #include <iostream>
    #include <stdlib.h>
    #include <math.h>
    using namespace std;
    typedef long long LL;
    
    LL pow_mod(LL a,LL n,LL mod){
        LL ans = 1;
        while(n){
            if(n&1) ans = ans*a%mod;
            a = a*a%mod;
            n>>=1;
        }
        return ans;
    }
    
    int main()
    {
        LL x,m,k,c;
        int tcase;
        scanf("%d",&tcase);
        int t =1;
        while(tcase--){
            cin>>x>>m>>k>>c;
            printf("Case #%d:
    ",t++);
            LL mod = 9*k;
            LL ans = ((pow_mod(10,m,mod)-1)*x%mod+mod)%mod;
            if(ans==9*c%mod){
                printf("Yes
    ");
            }else printf("No
    ");
        }
        return 0;
    }
  • 相关阅读:
    每日立会2015-11-30
    Some Modern Softwares' drawbacks: User experience 12/29/2015
    Sprint 5 summary: UI 界面更新,Azure端部署和用户反馈分析 12/28/2015
    Daily Scrum 12/25/2015
    Daily Scrum 12/24/2015
    Daily Scrum 12/23/2015
    Daily Scrum 12/21/2015
    Daily Scrum 12/18/2015
    Daily Scrum 12/17/2015
    Performance standard (ALPHA release) 12/17/2015
  • 原文地址:https://www.cnblogs.com/liyinggang/p/5536007.html
Copyright © 2011-2022 走看看