結果

問題 No.519 アイドルユニット
ユーザー kohaku_kohaku
提出日時 2017-05-28 22:55:10
言語 Java
(openjdk 23)
結果
TLE  
実行時間 -
コード長 1,150 bytes
コンパイル時間 2,160 ms
コンパイル使用メモリ 77,656 KB
実行使用メモリ 69,036 KB
最終ジャッジ日時 2024-09-21 15:43:58
合計ジャッジ時間 6,603 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other TLE * 1 -- * 33
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int [][] F = new int [N][N];
        for(int i=0; i<N; i++){
            for(int j=0; j<N; j++){
                F[i][j] = sc.nextInt();
            }
        }
        solve(N,F);
    }
    static int ans;
    static void solve(int N, int[][]F){
        ans=0;
        boolean []boo = new boolean[N];
        function(F,boo,N,0,0);
        System.out.println(ans);
    }
    static void function(int[][]F, boolean[]boo, int N, int C, int sum){
        if(N==C){
            ans = Math.max(ans,sum);
        }else{
            for(int i=0; i<N; i++){
                if(!boo[i]){
                    boo[i] = true;
                    for(int j=i+1; j<N; j++){
                        if(!boo[j]){
                            boo[j] = true;
                            function(F,boo,N,C+2,sum+F[i][j]);
                            boo[j] = false;
                        }
                    }
                    boo[i] = false;
                }
            }
        }
    }
}
0