zoukankan      html  css  js  c++  java
  • 大数取模 模板

    1 scanf("%s%d",a,&b);
    2 int len=strlen(a);
    3 int ans=0;
    4 for(int i=st;i<len;i++)
    5     ans=(int)(((long long)ans*10+a[i]-'0')%b);
    6 printf("%d
    ",ans);

    Description

    Given two integers, a and b, you should check whether a is divisible by b or not. We know that an integer a is divisible by an integer b if and only if there exists an integer c such that a = b * c.

    Input

    Input starts with an integer T (≤ 525), denoting the number of test cases.

    Each case starts with a line containing two integers a (-10200 ≤ a ≤ 10200) and b (|b| > 0, b fits into a 32 bit signed integer). Numbers will not contain leading zeroes.

    Output

    For each case, print the case number first. Then print 'divisible' if a is divisible by b. Otherwise print 'not divisible'.

    Sample Input

    6

    101 101

    0 67

    -101 101

    7678123668327637674887634 101

    11010000000000000000 256

    -202202202202000202202202 -101

    Sample Output

    Case 1: divisible

    Case 2: divisible

    Case 3: divisible

    Case 4: not divisible

    Case 5: divisible

    Case 6: divisible

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <algorithm>
     5 #include<cmath>
     6 using namespace std;
     7 #define maxn 10000000
     8 int t,b;
     9 char a[205];
    10 int main()
    11 {
    12 scanf("%d",&t);
    13 int cnt=0;
    14 while(t--)
    15 {
    16     scanf("%s%d",a,&b);
    17     int len=strlen(a);
    18     int ans=0;
    19     int st=0;
    20     printf("Case %d: ",++cnt);
    21     if(a[0]=='-')
    22         st=1;
    23     for(int i=st;i<len;i++)
    24     ans=(int)(((long long)ans*10+a[i]-'0')%b);
    25     if(ans==0)
    26         printf("divisible
    ");
    27         else
    28             printf("not divisible
    ");
    29 
    30 }
    31 
    32  return 0;
    33 }
    34 
    35 //6
    36 //
    37 //101 101
    38 //
    39 //0 67
    40 //
    41 //-101 101
    42 //
    43 //7678123668327637674887634 101
    44 //
    45 //11010000000000000000 256
    46 //
    47 //-202202202202000202202202 -101
  • 相关阅读:
    五分钟,让你明白MySQL是怎么选择索引《死磕MySQL系列 六》 咔咔
    MySQL统计总数就用count(*),别花里胡哨的《死磕MySQL系列 十》 咔咔
    C++类型转换:const_cast 和reinterpret_cast
    C++类型转换
    C++中*和&的用法
    CMake简介
    文件和流IO
    字节存储:大端字节和小端字节
    离线的Window 10无法安装.Net Framework 3.5的解决办法
    KeyTool 使用简介
  • 原文地址:https://www.cnblogs.com/ZP-Better/p/4659156.html
Copyright © 2011-2022 走看看