zoukankan      html  css  js  c++  java
  • nyoj 105

    九的余数

    时间限制:3000 ms  |  内存限制:65535 KB
    难度:3
    描写叙述

    如今给你一个自然数n,它的位数小于等于一百万,如今你要做的就是求出这个数整除九之后的余数。

    输入
    第一行有一个整数m(1<=m<=8),表示有m组測试数据;
    随后m行每行有一个自然数n。
    输出
    输出n整除九之后的余数,每次输出占一行。
    例子输入
    3
    4
    5
    465456541
    例子输出
    4
    5
    4
    思路:
    看到此题位数为百万位,能够想象数是很大的此时 我考虑到能够用数组存取大数
    然后数组中每一位对九取余,剩下的余数dp,作为下组数据的十位数+个位数取余,如此循环。直到求出最后一位的余数,即为所求数的余数
    代码例如以下:
    #include<stdio.h>
    #include<string.h>
    char a[1000000];//此数组把数字当做字符串读取
    int  s[1000000];//把字符数组转换存入整形数组中
    int main()
    {
       int m;
       scanf("%d",&m);
       while(m--)
       {
           int len,i,ans=0,dp=0;
    	   scanf("%s",a);//读入字符串
           len=strlen(a);//计算长度
    	   for(i=0;i<len;i++)
    		   s[i]=a[i]-'0';//把字符串转化为整形存入数组
    	   for(i=0;i<len;i++)
    	   {
              ans=(s[i]+dp*10)%9;//求余数
    		  dp=ans;//计算余数,作为下次求余数的十位数字
    	   }
    	   printf("%d
    ",dp);//输出最后取得的余数,即为所求
       }
    }


  • 相关阅读:
    clickhouse群集模式搭建
    基于Att&ck模型的整体威胁框架方法论
    应急响应Windows各种操作记录备份
    代理总结
    Linux应急响应日志分析
    Web漏洞利用框架
    Suricata策略记录
    应急响应汇总
    IDS&IPSSuricata介绍
    ATT&CKMitreInitial Access(初始化访问)
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4328487.html
Copyright © 2011-2022 走看看