山东省浪潮杯 SDUT3260大整数取模

同余定理:

(a+b)% c = (a%c+ b%c)%c

(a-b)%c=(a%c-b%c+c)%c;

(a*b)%c =  ( a%c* b%c)%c

 

大整数取模运算:

1234=((1*10+2)*10+3)*10+4;


Association for Couples Math (ACM) is a non-profit organization which is engaged in helping single people to find his/her other half. As November 11th is “Single Day”, on this day, ACM invites a large group of singles to the party. People round together, chatting with others, and matching partners.
There are N gentlemen and M ladies in the party, each gentleman should only match with a lady and vice versa. To memorize the Singles Day, ACM decides to divides to divide people into 11 groups, each group should have the same amount of couples and no people are left without the groups.
Can ACM achieve the goal?
 
输入
 The first line of the input is a positive integer T. T is the number of test cases followed. Each test case contains two integer N and M (0 ≤ N, M ≤ 101000), which are the amount of gentlemen and ladies.
输出
 For each test case, output “YES” if it is possible to find a way, output “NO” if not.
示例输入
3
1 1
11 11
22 11
示例输出
NO
YES
NO

#include<iostream>
#include<cstdlib>
#include<cstring>
#include<string>
using namespace std;
int main()
{
    int T;
    cin>>T;
    while(T--)
    {
        string str1,str2;
        int n,m,num=0;
        cin>>str1>>str2;
        if(str1==str2)
        {
            int len=str1.length();
            for(int i=0;i<=len-1;i++)
                num=(num*10+str1[i]-'0')%11;
            if(num==0)
                cout<<"YES"<<endl;
            else
                cout<<"NO"<<endl;
        }
        else
            cout<<"NO"<<endl;
    }
    return 0;
}

大整数取模模板

算法模板:
Cin>>str1>>n;
Int len=str1.length();int ans=0;
For(int i=0;i<=len-1;i++)
ans=(ans*10+str1[i]-’0’)%n;
cout<<ans<<endl;





你可能感兴趣的:(数论,大整数取模)