【牛客网】[编程题]约数的个数

  • 2019 年 11 月 8 日
  • 笔记

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/shiliang97/article/details/102568346

题目描述

输入n个整数,依次输出每个数的约数的个数

输入描述:

输入的第一行为N,即数组的个数(N<=1000)  接下来的1行包括N个整数,其中每个数的范围为(1<=Num<=1000000000)  当N=0时输入结束。

输出描述:

可能有多组输入数据,对于每组输入数据,  输出N行,其中每一行对应上面的一个数的约数的个数。

示例1

输入

复制

5  1 3 4 6 12

输出

复制

1  2  3  4  6
#include<iostream>  using namespace std;  int num(int n){      int sum=0;      int i;      for(i=1;i*i<n;i++){          if(n%i==0){              sum+=2;          }      }if(i*i==n){          sum++;      }      return sum;  }  int main(){      int a,b;      while(cin>>a){          for(int i=0;i<a;i++){              cin>>b;              cout<<num(b)<<endl;          }      }      return 0;  }