2156 - 雨花石
时间限制 : 3 秒
内存限制 : 128 MB
我是一颗小小的石头
深深的埋在泥土之中
你的影子已看不清
我还在寻觅当初你的笑容
我是一颗小小的石头
深深的埋在泥土之中
千年以后繁华落幕
我还在风雨之中为你等候
我还在土中为你守候
——李玉刚《雨花石》
前世的九百九十九次回眸,才能换得今日的相守。
九,为数之极,故宫原定修建的时候,便有9999间房子。
古人对九的研究也从未停止过。
今天我们就尝试着研究一下。这个问题很简单:给你一个数,判断能否被9整除。
题目输入
输入数据的第一行是一个数据T,表示有T组测试数据。
每组数字占一行(数字的位数在1—2000位之间)。
题目输出
对每一组样例,判断能否被9整除。能则输出YES,不能则输出NO
输入/输出样例
输入格式
5 9 13 17 27 99999999
输出格式
YES NO NO YES YES
C语言解答
#include<stdio.h> #include<string.h> int main(void) { int n; scanf("%d",&n); while(n--) { char a[2005]; int i; scanf("%s",a); int len=strlen(a); int ans=0; for(i=0;i<len;i++) ans=(int)(((long long)ans*10+(a[i]-'0'))%9); if(ans%9==0) printf("YES\n"); else printf("NO\n"); } return 0; }
C++解答
#include <stdio.h> #include <string.h> int main() {int n; char s[10000]; scanf("%d",&n); while(n--) { scanf("%s",s); int l=strlen(s); int sum=0,i; for(i=0;i<l;i++) { sum=sum+s[i]-'0'; } if(sum%9==0) printf("YES\n"); else printf("NO\n"); } return 0; }
Java解答
import java.util.Scanner; import java.math.BigInteger; public class Main{ public static void main(String[] args) { Scanner in = new Scanner(System.in); int m; BigInteger n,jiu = BigInteger.valueOf(9),zero=BigInteger.ZERO; m = in.nextInt(); for(int i=0;i<m;i++) { n = in.nextBigInteger(); if(n.mod(jiu).compareTo(zero)==0) System.out.println("YES"); else System.out.println("NO"); } } }