using System;using System.Collections.Generic;using System.Linq;publicclassKata{
publicstaticboolAmicableNumbers(int num1,int num2){
int sum1 =0;int sum2 =0;for(int i =1; i < num1; i++){
if(num1 % i ==0){
sum1 += i;}}for(int j =1; j < num2; j++){
if(num2 % j ==0){
sum2 += j;}}return(sum1==num2 && sum2==num1);}}
答案2:
using System.Linq;publicclassKata{
publicstaticboolAmicableNumbers(int num1,int num2){
return Enumerable.Range(1, num1 -1).Where(x => num1 % x ==0).Sum()== num2 && Enumerable.Range(1, num2 -1).Where(x => num2 % x ==0).Sum()== num1;}}
答案3:
using System;using System.Collections.Generic;using System.Linq;publicclassKata{
publicstaticboolAmicableNumbers(int num1,int num2){
int i, sum1 =0, sum2 =0;for(i =1; i < num1; i++){
if(num1 % i ==0)
sum1 += i;}for(i =1; i < num2; i++){
if(num2 % i ==0)
sum2 += i;}return(num1 == sum2 &