神奇算式 藍橋杯(java版)

2021-07-07 11:05:35 字數 1191 閱讀 4395

看**

package lanqiao;

由4個不同的數字,組成的乙個乘法算式,它們的乘積仍然由這4個數字組成。

比如:210 x 6 = 1260

8 x 473 = 3784

27 x 81 = 2187

都符合要求。

如果滿足乘法交換律的算式算作同一種情況,那麼,包含上邊已列出的3種情況,一共有多少種滿足要求的算式。

請填寫該數字,通過瀏覽器提交答案,不要填寫多餘內容(例如:列出所有算式)。*/

/*解題思路

這個問題的思路也是列舉法,列舉物件分別為積和那個較小的乘數。

還有兩個限制條件:

每個數字的每一位數字不允許重複;

這4個數字出現且僅出現2次。

這些限制條件是使用乙個標記陣列實現的。*/

public class shenqi

vis[x % 10]--;

x =x/ 10;

} while(x!=0);

do vis[y % 10]--;

y =y/ 10;

} while(y!= 0);

return true;

}/* 函式名check4

* 檢查每個數字的每一位數字是否重複

* 並且把每位數字作為陣列下標存下來下來

* 檢驗乘積

* */

public static boolean check4(int x)

vis[x % 10]++;

x =x/ 10;

} while(x!=0);

return true;

} public static void main(string args)

if (!check4(i))

//將vis的值賦給bk

for (int j1 = 0; j1 < vis.length; j1++)

for (int j = 1; j<=98; j++)

if (i%j!=0)

int k=i/j;

if (j>k)

if (!check(j, k))

system.out.println(j+"*"+k+"="+i);

cnt++;}}

system.out.println(cnt);

} }

藍橋杯 神奇算式

由4個不同的數字,組成的乙個乘法算式,它們的乘積仍然由這4個數字組成。比如 6 x 210 1260 8 x 473 3784 27 x 81 2187 都符合要求。如果滿足乘法交換律的算式算作同一種情況,那麼,包含上邊已列出的3種情況,請輸出剩餘的滿足要求的算式且按照第乙個因數從小到大排列,第乙個...

神奇算式 藍橋杯

原創 神奇算式 藍橋杯 摘要 本題是2014年第五屆藍橋杯全國軟體大賽預賽a組第3題。由4個不同的數字,組成的乙個乘法算式,它們的乘積仍然由這4個數字組成。比如 210 x 6 1260 8 x 473 3784 27 x 81 2187都符合要求。如果滿足乘法交換律的算式算作同一種情況,那麼,包含...

藍橋杯 2014 神奇算式

由4個不同的數字,組成的乙個乘法算式,它們的乘積仍然由這4個數字組成。比如 210 x 6 1260 8 x 473 3784 27 x 81 2187 都符合要求。如果滿足乘法交換律的算式算作同一種情況,那麼,包含上邊已列出的3種情況,一共有多少種滿足要求的算式。請填寫該數字,通過瀏覽器提交答案,...