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;
    }
  • 相关阅读:
    提前期分类
    物料属性,MRP/MPS属性
    ASP.NET刷新页面的一些方法
    Nothing 和 Is
    三层架构与MVC
    ADO.NET
    软件工程之数据流程图(DFD Data Flow Diagram)
    VB.NET小结
    推荐开发人员看的具有影响力的书籍
    C++考试
  • 原文地址:https://www.cnblogs.com/albert67/p/10415614.html
Copyright © 2011-2022 走看看