每日一道编程题:niven 数

题目

一个数的自身能够被其各位数之和整除,则称这个数为Niven数。
例如:111是Niven数。因为111 mod (1+1+1)=0。
同样地, 我们也可以在另一个b进制数中指定一个数字,如果它的数字之和能够整除它,则b进制数中的该数字是Niven数。
例如:二进制数 1010是Niven数,因为:二进制数1010转为十进制后是10,而10 mod(1+0+1+0)=0;

给出 数制b (2<=b<=10) 和一个b数制的数,你要判断这个数是否是Niven数。
输入数据包含多组数据。

输入格式

每个测试数据占一行,先是数制b,之后是一个合法的数制中的数。
b为0表示测试块结束。

输出格式

如果该数在该数制为Niven数,就输出"yes",否则输出"no"。
两个测试块之间用空行隔开。

输出样例

10 111
2 110
10 123
6 1000
8 2314
0

输入样例

yes
yes
no
yes
no

题解

#include <bits/stdc++.h>
using namespace std;
 
bool niven(string a,int b)
{
   
    int sjz=0,tot=0,cur=1;
    for(int i=0; i<a.length(); i++)
    {
   
        tot+=(a[i]-'0');
    }
    for(int i=a.length()-1; i>=0; i--)
    {
   
        sjz+=(a[i]-'0')*cur;
        cur*=b;
    }
    return sjz%tot==0;
}
 
int main()
{
   
    string a;
    int b;
    while(cin>>b && b!=0)
    {
   
        cin>>a;
        if(niven(a,b))
            cout<<"yes"<<endl;
        else
            cout<<"no"<<endl;
    }
    return 0;
}

相关推荐

  1. 每日编程niven

    2024-01-22 17:36:07       31 阅读
  2. 每日算法 1

    2024-01-22 17:36:07       37 阅读
  3. 每日】C++生成组合

    2024-01-22 17:36:07       19 阅读
  4. 每日:三之和

    2024-01-22 17:36:07       15 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-22 17:36:07       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-22 17:36:07       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-22 17:36:07       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-22 17:36:07       18 阅读

热门阅读

  1. 设计类标书制作方法

    2024-01-22 17:36:07       31 阅读
  2. 常用的Qt开源库分享

    2024-01-22 17:36:07       29 阅读
  3. LeetCode 211.添加与搜索单词 - 数据结构设计 题解

    2024-01-22 17:36:07       40 阅读
  4. vue 一键换肤

    2024-01-22 17:36:07       35 阅读
  5. Python经典例题20道

    2024-01-22 17:36:07       41 阅读
  6. Hive之set参数大全-11

    2024-01-22 17:36:07       30 阅读
  7. PiflowX组件-PostgresCdc

    2024-01-22 17:36:07       32 阅读
  8. 柠檬微趣面试准备

    2024-01-22 17:36:07       33 阅读
  9. 使用helm部署 redis 单机版

    2024-01-22 17:36:07       31 阅读
  10. NGINX网站服务

    2024-01-22 17:36:07       29 阅读
  11. CCF ---- 仓库规划

    2024-01-22 17:36:07       32 阅读