2014省赛----神奇算式(填空)
生活随笔
收集整理的這篇文章主要介紹了
2014省赛----神奇算式(填空)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
import java.util.Arrays;public class TestOne {private static int n;public static void main(String[] args) {//遍歷所有的1~3位數(i和j中所包含的數字不同,且共有4位)for(int i=1;i<=999;i++) {for(int j=1;j<=999;j++) {String s1 = Integer.toString(i);String s2 = Integer.toString(j);if(s1.length()>0 && s2.length()>0 && s1.length()+s2.length()==4 ) {//如果i,j的數字位均>0,且共4位if(check(s1,s2,i,j)) {//i*j 滿足題目要求System.out.println(i+"*"+j+"="+i*j);n++;}}}}//for//考慮到交換律,n需除以2System.out.println(n/2);}private static boolean check(String s1, String s2,int num1,int num2) {char[] c1 = s1.toCharArray();char[] c2 = s2.toCharArray();//1.首先判斷num1和num2所包含的數字是否重復for(int i=0;i<s1.length();i++) {for(int j=0;j<s2.length();j++) {if(c1[i]==c2[j]) {return false;}}}//2.計算int num = num1*num2;//3.比較結果與兩個乘數的數字是否一樣String s = s1.concat(s2); //兩個乘數String s3 = Integer.toString(num); //結果char[] c = s.toCharArray();char[] c3 = s3.toCharArray();if(s3.length()!=4) {//結果長度!=4return false;}//4.對結果 和 乘數排序Arrays.sort(c);Arrays.sort(c3);return new String(c).equals(new String(c3));}
}
?
總結
以上是生活随笔為你收集整理的2014省赛----神奇算式(填空)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 账号权限问题导致数据泄露频发,如何破解“
- 下一篇: python实现ORC/文字识别之pyt