답안 #339876

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
339876 2020-12-26T10:25:19 Z beksultan04 최솟값 배열 (IZhO11_hyper) C++14
100 / 100
478 ms 91500 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define pii pair<int,int>
#define OK puts("OK");
#define NO puts("NO");
#define YES puts("YES");
#define fr first
#define sc second
#define ret return
#define scan1(a) scanf("%lld",&a);
#define scan2(a,b) scanf("%lld %lld",&a, &b);
#define scan3(a,b,c) scanf("%lld %lld %lld",&a,&b,&c);
#define all(s) s.begin(),s.end()
#define allr(s) s.rbegin(),s.rend()
#define pb push_back
#define sz(v) (int)v.size()
#define endi puts("");
const int N = 1e5+12,INF=1e9+7;
int a[36][36][36][36],b[6][36][36][36][36];
main(){
    int n,i,j,k,l,x,m;
    scan2(n,m)
    for (i=1;i<=n;++i){
        for (j=1;j<=n;++j){
            for (k=1;k<=n;++k){
                for(l=1;l<=n;++l){
                    scan1(a[i][j][k][l])
                    b[0][i][j][k][l]=b[1][i][j][k][l]=b[2][i][j][k][l]=b[3][i][j][k][l]=INF;
                }
            }
        }
    }
    for (x=0;x<m;++x)
        for (i=1;i<=n;++i)
            for (j=1;j<=n;++j)
                for (k=1;k<=n;++k)
                    for (l=1;l<=n;++l){
                        if (l+x <= n)
                            b[0][i][j][k][l] = min(b[0][i][j][k][l],a[i][j][k][l+x]);
                    }

    for (x=0;x<m;++x)
        for (i=1;i<=n;++i)
            for (j=1;j<=n;++j)
                for (k=1;k<=n;++k)
                    if (k+x <= n)
                        for (l=1;l<=n;++l){
                                b[1][i][j][k][l] = min(b[1][i][j][k][l],b[0][i][j][k+x][l]);
                        }

    for (x=0;x<m;++x)
        for (i=1;i<=n;++i)
            for (j=1;j<=n;++j)
                if (j+x <= n)
                    for (k=1;k<=n;++k)
                        for (l=1;l<=n;++l){
                            b[2][i][j][k][l] = min(b[2][i][j][k][l],b[1][i][j+x][k][l]);
                        }

    for (x=0;x<m;++x)
        for (i=1;i<=n;++i)
            if (i+x <= n)
                for (j=1;j<=n;++j)
                    for (k=1;k<=n;++k)
                        for (l=1;l<=n;++l){
                            b[3][i][j][k][l] = min(b[3][i][j][k][l],b[2][i+x][j][k][l]);
                        }



    for (i=1;i<=n-m+1;++i){
        for (j=1;j<=n-m+1;++j){
            for (k=1;k<=n-m+1;++k){
                for(l=1;l<=n-m+1;++l){
                    cout <<b[3][i][j][k][l]<<" ";
                }
            }
        }
    }
}

Compilation message

hyper.cpp:21:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   21 | main(){
      |      ^
hyper.cpp: In function 'int main()':
hyper.cpp:12:25: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   12 | #define scan2(a,b) scanf("%lld %lld",&a, &b);
      |                    ~~~~~^~~~~~~~~~~~~~~~~~~~
hyper.cpp:23:5: note: in expansion of macro 'scan2'
   23 |     scan2(n,m)
      |     ^~~~~
hyper.cpp:11:23: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   11 | #define scan1(a) scanf("%lld",&a);
      |                  ~~~~~^~~~~~~~~~~
hyper.cpp:28:21: note: in expansion of macro 'scan1'
   28 |                     scan1(a[i][j][k][l])
      |                     ^~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 1004 KB Output is correct
3 Correct 4 ms 3820 KB Output is correct
4 Correct 4 ms 3820 KB Output is correct
5 Correct 5 ms 3820 KB Output is correct
6 Correct 17 ms 10092 KB Output is correct
7 Correct 15 ms 9964 KB Output is correct
8 Correct 45 ms 20972 KB Output is correct
9 Correct 59 ms 22764 KB Output is correct
10 Correct 57 ms 21100 KB Output is correct
11 Correct 113 ms 36844 KB Output is correct
12 Correct 238 ms 55788 KB Output is correct
13 Correct 277 ms 54636 KB Output is correct
14 Correct 244 ms 60524 KB Output is correct
15 Correct 369 ms 79852 KB Output is correct
16 Correct 385 ms 68204 KB Output is correct
17 Correct 331 ms 69612 KB Output is correct
18 Correct 444 ms 91500 KB Output is correct
19 Correct 392 ms 80492 KB Output is correct
20 Correct 478 ms 78444 KB Output is correct