赞
踩
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
请看下面的算式:
(ABCD−EFGH)∗XY=900。
每个字母代表一个 0 ~ 9 的数字,不同字母代表不同数字,首位不能为 0。
比如, (5012−4987)∗36 就是一个解。
请找到另一个解,并提交该解中 ABCD 所代表的整数。
- public class Main {
- static int[] a=new int[10];
- static int[] ans=new int[10];
- static int[] biaoji=new int[10];
- public static void main(String[] args) {
- dfs(0);
- for(int i=0;i<4;i++){
- System.out.print(ans[i]);
- }
- }
- public static void dfs(int n){
- if(n==10){
- int b=a[0]*1000+a[1]*100+a[2]*10+a[3];
- int c=a[4]*1000+a[5]*100+a[6]*10+a[7];
- int d=a[8]*10+a[9];
- if((b-c)*d==900&&a[0]!=0&&a[4]!=0&&a[8]!=0){
- for(int i=0;i<10;i++){
- ans[i]=a[i];
- }
- return;
- }
- else{
- return;
- }
- }
- if(a[n]!=0){
- dfs(n+1);
- }
- for(int i=0;i<=9;i++){
- if(a[n]==0&&biaoji[i]==0){
- a[n]=i;
- biaoji[i]=1;
- dfs(n+1);
- a[n]=0;
- biaoji[i]=0;
- }
- }
- }
- }

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。