zoukankan      html  css  js  c++  java
  • Codeforces Round #540 (Div. 3)--1118C

    https://codeforces.com/contest/1118/problem/C

    在查找元素的时候,必须按4,2,1的顺序进行。因为,如果先找1,可能就把原来的4拆散了,然后再找4,就找不到了

    #include<bits/stdc++.h>
    using namespace std;
    int ans[25][25];
    int main(){
        int n;
        cin>>n;
        map<int,int> mp;
        int t;
        for(int i=0;i<n*n;i++){
            cin>>t;
            mp[t]++;
        }
        vector<pair<int,pair<int,int> > > ceil;
        for(int i=0;i<(n+1)/2;i++)
            for(int j=0;j<(n+1)/2;j++){
                if(i!=n-1-i&&j!=n-1-j)
                    ceil.push_back({4,{i,j}});
                else if(i!=n-1-i||j!=n-1-j)
                    ceil.push_back({2,{i,j}});
                else
                    ceil.push_back({1,{i,j}});
            }
        int number[3]={4,2,1};
        for(int q=0;q<3;q++){
            int w=number[q];
            for(int v=0;v<ceil.size();v++){
                pair<int,pair<int,int> > c=ceil[v];
                int times=c.first;
                if(times!=w)
                    continue;
                int i=c.second.first;
                int j=c.second.second;
                map<int,int>::iterator it;
                for(it=mp.begin();it!=mp.end();it++){
                    if(it->second>=times){
                        it->second-=times;
                        ans[i][j] = ans[n - i - 1][j] = ans[i][n - j - 1] = ans[n - i - 1][n - j - 1] = it->first;
                        break;
                    }
                }    
                if(it==mp.end()){
                    cout<<"NO"<<endl;
                    return 0;
                }
            }
        }
        cout<<"YES"<<endl;
        for(int i=0;i<n;i++){
            for(int j=0;j<n;j++){
                cout<<ans[i][j]<<" ";
            }
            cout<<endl;
        }
        return 0;
    }
  • 相关阅读:
    mysql之数据类型以及操作数据表
    mysql之提示符
    神经网络-1
    matlab使用摄像头人脸识别
    使用git和intelliJ
    VS配置使用第三方库
    Qt(1)
    附录:其他相关知识
    附录:python and numpy
    上手Caffe(二)
  • 原文地址:https://www.cnblogs.com/albert67/p/10415614.html
Copyright © 2011-2022 走看看