zoukankan      html  css  js  c++  java
  • (能被11整除的数的特征)The shortest problem --hdu

    链接:

    http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1005&cid=595

    若一个整数的个位数字截去,再从余下的数中,减去个位数的2倍,如果差是7的倍数,则原数能被7整除。如果一次不容易看出,就需要继续上述过程。如6139,过程如下:613-9×2=595,59-5×2=49,所以6139是7的倍数。

    能被11整除的数的特征
    把一个数由右边向左边数,将奇位上的数字与偶位上的数字分别加起来,再求它们的差,如果这个差是11的倍数(包括0),那么,原来这个数就一定能被11整除.

    能被3整除的数有什么特征??

    各个数位上的数字之和是3的倍数

    能被5整除的数有什么特征??

    个位是0或5

    能被9整除的数有什么特征??

    各个数位上数字之和是9的倍数

    被7整除:若一个整数的个位数字截去,再从余下的数中,减去个位数的2倍,如果差是7的倍数,则原数能被7整除。如果差太大或心算不易看出是否7的倍数,就需要继续上述「截尾、倍大、相减、验差」的过程,直到能清楚判断为止。例如,判断133是否7的倍数的过程如下:13-3×2=7,所以133是7的倍数;又例如判断6139是否7的倍数的过程如下:613-9×2=595 , 59-5×2=49,所以6139是7的倍数,余类推。 
    若一个整数的各个位数的数字和能被9整除,则这个整数能被9整除。如252=2+2+5=9
    若一个整数的奇位数字之和与偶位数字之和的差能被11整除,则这个数能被11整除。11的倍数检验法也可用上述检查7的「割尾法」处理!过程唯一不同的是:倍数不是2而是1! 
    若一个整数的个位数字截去,再从余下的数中,加上个位数的4倍,如果差是13的倍数,则原数能被13整除。如果差太大或心算不易看出是否13的倍数,就需要继续上述「截尾、倍大、相加、验差」的过程,直到能清楚判断为止

    代码:

    #include <iostream>
    #include <cstdio>
    #include <cstring>
    #include <algorithm>
    using namespace std;
    #define N 1000005
    #define INF 0x3f3f3f3f
    
    int J, O, j, o, i;
    
    int Slove(int x)
    {
        i = j = o = 0;
        while(x)
        {
          i++;
          if(i%2)
          j += x%10;
          else
          o += x%10;
          x /= 10;
        }
        return j+o;
    }
    
    int main()
    {
        int n, t, k=1, flag=0;
        while(scanf("%d%d", &n, &t)!=EOF)
        {
            if(n==-1 && t==-1)
                break;
    
            flag = J = O = 0;
    
            int a = Slove(n), b = a;
    
            if(i%2) swap(J, O);
                J += j, O += o;
    
            while(t--)
            {
                a += Slove(b);
                b = a;
    
                if(i%2) swap(J, O);
                    J += j, O += o;
            }
    
            if(J<O)  swap(J, O);
            if((J-O)%11==0) flag = 1;
    
            if(flag==1)
                printf("Case #%d: Yes
    ", k++);
            else
                printf("Case #%d: No
    ", k++);
        }
        return 0;
    }
    勿忘初心
  • 相关阅读:
    掌门教育首通和续费文案整理
    python upload file遇到的坑,整理如下
    测试难题(转)
    敏捷测试与传统测试的区别
    质量体系
    幂等校验
    Charles常用功能整理
    测试难题
    敏捷测试与传统测试的区别
    质量体系
  • 原文地址:https://www.cnblogs.com/YY56/p/4720990.html
Copyright © 2011-2022 走看看