久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

java算法題,set內出現重復元素

瀏覽:124日期:2024-01-05 14:54:14

問題描述

題目

將數字 1…9 填入一個3×3 的九宮格中,使得格子中每一橫行和的值全部相等,每一豎列和的值全部相等。請你計算有多少種填數字的方案。

這個是計蒜客上面的一個模擬題,我采用暴力。

public class _3 { /* * 將數字 1…9 填入一個3×3 的九宮格中, * 使得格子中每一橫行和的值全部相等, * 每一豎列和的值全部相等。 * 請你計算有多少種填數字的方案。 * */ public static void main(String[] args) {int count = 0;int[] a = new int[9];Set<Integer> set = new HashSet<>();for (a[0] = 1; a[0] < 10; a[0]++) { for (a[1] = 1; a[1] < 10; a[1]++) {for (a[2] = 1; a[2] < 10; a[2]++) { for (a[3] = 1; a[3] < 10; a[3]++) {for (a[4] = 1; a[4] < 10; a[4]++) { for (a[5] = 1; a[5] < 10; a[5]++) {for (a[6] = 1; a[6] < 10; a[6]++) { for (a[7] = 1; a[7] < 10; a[7]++) {for (a[8] = 1; a[8] < 10; a[8]++) { int row1 = a[0] + a[1] + a[2]; int row2 = a[3] + a[4] + a[5]; int row3 = a[6] + a[7] + a[8]; int col1 = a[0] + a[3] + a[6]; int col2 = a[1] + a[4] + a[7]; int col3 = a[2] + a[5] + a[8]; if (col1 == col2 && col2 == col3 && row1 == row2 && row1 == row3 && col1 == row1) {for (int i = 0; i < 9; i++) {set.add(a[i]);}if (set.size() == 9) {count++;} }} }} }} }} }}System.out.println(count); }}

計劃用 set進行去重,但是發現沒去了。

求大神解釋一下

java算法題,set內出現重復元素

問題解答

回答1:

每次循環都得把set清空

標簽: java
主站蜘蛛池模板: 石狮市| 大田县| 三河市| 襄垣县| 盐边县| 宣武区| 江津市| 葫芦岛市| 瑞安市| 庄河市| 承德市| 东乡县| 长宁区| 北碚区| 蓬莱市| 南溪县| 德令哈市| 巫山县| 称多县| 望城县| 长寿区| 白玉县| 红原县| 南昌县| 兴宁市| 吉水县| 霍城县| 隆尧县| 安陆市| 开封县| 伊川县| 沽源县| 屏东县| 博野县| 理塘县| 麻江县| 鄯善县| 凤冈县| 小金县| 长岛县| 瑞安市|