您的位置:首页 > 运维架构

TopCoder 250 points 10-SRM 148 DIV 2 167.20/250 66.88%

2013-05-31 18:41 519 查看

Problem Statement

Create a class DivisorDigits containing a method howMany which takes an int
number
and returns how many digits in number divide evenly intonumber itself.

Definition

Class:DivisorDigits
Method:howMany
Parameters:int
Returns:int
Method signature:int howMany(int number)
(be sure your method is public)

Notes

-No number is divisible by 0.

Constraints

-number will be between 10000 and 999999999.

Examples

0)
12345

Returns: 3

12345 is divisible by 1, 3, and 5.
1)
661232

Returns: 3

661232 is divisible by 1 and 2.
2)
52527

Returns: 0

52527 is not divisible by 5, 2, or 7.
3)
730000000

Returns: 0

Nothing is divisible by 0. In this case, the number is also not divisible by 7 or 3.
This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2003, TopCoder, Inc. All rights reserved.

public class DivisorDigits {

public  int howMany(int number) {
int copynum = number;
int sum = 0;
int digit;
int num[] = new int[10];
while (number > 0) {
digit = number % 10;
num[digit]++;
number = number / 10;
}
for (int i = 1; i < 10; i++) {
if (num[i] > 0)
if (copynum % i == 0)
sum += num[i];
}

return sum;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: