1 条题解
-
0
C :
#include<stdio.h> int fun(int n){ int r=1,i; for(i=1;i<=n;i++){ r=r*i; } return r; } void main(){ int g,s,b,i,x1,x2,x3; for(i=100;i<=999;i++){ g=i%10; s=i/10%10; b=i/100; x1=fun(g); x2=fun(s); x3=fun(b); if(i==x1+x2+x3){ printf("%d",i); } } }
C++ :
#include<iostream> using namespace std; int fac(int n){ int r=1; for(int i=1;i<=n;i++){ r=r*i; } return r; } int main(){ int a,b,c; int m; for(int i=100;i<=999;i++){ a=i/100; b=i%100/10; c=i%10; if(i==fac(a)+fac(b)+fac(c)){ m=i; break; } } cout<<m<<endl; return 0; }
Pascal :
begin write('145'); end.
Java :
public class Main { public static void main(String[] args) { int a = 0; int b = 0; int c = 0; for(int i = 100; i < 1000; i++) { a = i / 100; b = i / 10 % 10; c = i % 10; int sum1 = 1; int sum2 = 1; int sum3 = 1; for(int k = 1; k <= a; k++) { sum1 *= k; } for(int j = 1; j <= b; j++) { sum2 *= j; } for(int t = 1; t <= c; t++) { sum3 *= t; } if(i == sum1 + sum2 + sum3) { System.out.println(i); } } } }
Python :
import math for n in range(100,1000): a=n//100 b=n//10%10 c=n%10 if n==math.factorial(a)+math.factorial(b)+math.factorial(c): print(n) n+=1
- 1
信息
- ID
- 1514
- 时间
- 1000ms
- 内存
- 16MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者