Submission #5714413


Source Code Expand

#include <iostream>

using namespace std;

const long MOD = 1000000007;

long dp[301][301][301];

int main(){
    int N, M;
    cin >> N >> M;
    dp[0][1][1] = 1;
    for(int i = 1; i <= M; i++){
        for(int j = 1; j <= N; j++){
            for(int k = 1; k <= j; k++){
                //cout << i << ' ' << j << ' ' <<  k << endl;
                if(j == k){
                    for(int l = 1; l <= j; l++){
                        dp[i][j][k] += dp[i-1][j][l]*l;
                        dp[i][j][k] %= MOD;
                    }
                }else{
                    dp[i][j][k] = (dp[i-1][j][k]*(j-k))%MOD;
                    dp[i][j][k] += (dp[i-1][j-1][k]*(N-j+1))%MOD;
                    dp[i][j][k] %= MOD;
                }
            }
        }
    }
    cout << dp[M][N][N] << endl;
}

Submission Info

Submission Time
Task F - Road of the King
User ytkn
Language C++14 (GCC 5.4.1)
Score 1000
Code Size 838 Byte
Status AC
Exec Time 179 ms
Memory 212608 KB

Judge Result

Set Name sample all
Score / Max Score 0 / 0 1000 / 1000
Status
AC × 3
AC × 16
Set Name Test Cases
sample sample-01.txt, sample-02.txt, sample-03.txt
all sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, sample-01.txt, sample-02.txt, sample-03.txt
Case Name Status Exec Time Memory
01-01.txt AC 1 ms 256 KB
01-02.txt AC 1 ms 256 KB
01-03.txt AC 42 ms 211200 KB
01-04.txt AC 2 ms 896 KB
01-05.txt AC 42 ms 211200 KB
01-06.txt AC 54 ms 211584 KB
01-07.txt AC 170 ms 212480 KB
01-08.txt AC 178 ms 212608 KB
01-09.txt AC 178 ms 212608 KB
01-10.txt AC 179 ms 212608 KB
sample-01.txt AC 2 ms 2304 KB
sample-02.txt AC 77 ms 211840 KB
sample-03.txt AC 91 ms 108032 KB