zoukankan      html  css  js  c++  java
  • 2370: 圆周率

    2370: 圆周率

    Time Limit: 1 Sec  Memory Limit: 128 MB
    Submit: 156  Solved: 100
    [Submit][Status][Web Board]

    Description

    YT大学附小举办背诵圆率 PI 的比赛。谁背的正确的位数越多,谁为胜者。很多小学生背的位数很多,但是往往会有少数位置的数是错误的。为了快速加测出错误的圆周率,将圆周率 PI 小数点后的数字求模进行简单验证。
    例如:某学生背的圆周率为 3.15,则1510 mod 9 = 6,可以初步判定该学生背的圆周率错误。
     
    数有不同的进制表示,比如二进制、八进制、十进制等。现在给你一个任务,给定一个n进制,要它对n-1求模,比如:
                 782910 mod 9 =  8
                 377777777777777738 mod 7 =6
                 1234567 mod 6 =3
    (注意:377777777777777738=112589990684261910   1234567 =2287510 )
    你的任务是读入一些不同进制的数,求模。

    Input

     第一行表示为整数P(1≤P≤1000),表示一共的测试数据组数。
    每组测试测试数据一行,由三个数组成,第一个数表示组号,第二个数B(2≤B≤10),表示B进制,第三个数D表示要求模的数,D的位数不超过10,000,000位。

    Output

    每组测试数据一行,每一个数为组号,第二个为 D mod (B-1)

    Sample Input

    6
    1 10 7829
    2 7 12345
    3 6 432504023545112
    4 8 37777777777777773
    5 2 101011111111110000000000000000000011111111111111111111111
    6 10 145784444444444457842154777777777547845993

    Sample Output

    1 8
    2 3
    3 1
    4 6
    5 0
    6 6

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        char str[11111];
        int n;
        int t,k,s;
        scanf("%d",&n);
        while(n--)
        {
            scanf("%d %d %s",&t,&k,&str);
            int i,len;
            int now=0;
            len=strlen(str);
            for(i=0;i<len;i++)
            {
                now=now*k;
                now=now+str[i]-'0';
                now=now%(k-1);
            }
            printf("%d %d
    ",t,now);
        }
    }
    

      

  • 相关阅读:
    JEECG与帆软报表集成
    各种数据库的锁表和解锁操作
    sql server数据库查询超时报错
    java项目部署后的文件路径获取
    js解决跨站点脚本编制问题
    java递归算法实现拼装树形JSON数据
    FreeMarker中的list集合前后台代码
    去除list集合中重复项的几种方法
    Java中Properties类的操作
    mysql 容灾 灾备 备份
  • 原文地址:https://www.cnblogs.com/mjn1/p/9154201.html
Copyright © 2011-2022 走看看