1105. Spiral Matrix
来源:互联网 发布:外阴白斑知乎 编辑:程序博客网 时间:2024/05/16 14:39
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <deque>
#include <queue>
#include <cstring>
#include <vector>
#include <string>
#include <iomanip>
#include <map>
#include <set>
#include <cmath>
#include <stack>
#include <cmath>
#include <algorithm>
using namespace std;
#define max1 100001
#define inf -1
int main()
{
int n,i;
cin>>n;
vector<int>a(n);
for(i=0;i<n;i++)
cin>>a[i];
sort(a.begin(),a.end(),greater<int>());
int w=sqrt(n);
while(n%w!=0)w--;
int h=n/w;
int b[h][w];
int l=0,r=w-1,u=0,d=h-1;
int idx=0;
while(l<r&&u<d)
{
for(i=l;i<=r;i++)b[u][i]=a[idx++];
for(i=u+1;i<=d;i++)b[i][r]=a[idx++];
for(i=r-1;i>=l;i--)b[d][i]=a[idx++];
for(i=d-1;i>=u+1;i--)b[i][l]=a[idx++];
l++;u++;
r--;d--;
}
if(l==r)
for(i=u;i<=d;i++)b[i][r]=a[idx++];
else if(u==d)
for(i=l;i<=r;i++)b[d][i]=a[idx++];
for(i=0;i<h;i++)
{
cout<<b[i][0];
for(int j=1;j<w;j++)
cout<<' '<<b[i][j];
cout<<endl;
}
return 0;
}
#include <cstdlib>
#include <iostream>
#include <deque>
#include <queue>
#include <cstring>
#include <vector>
#include <string>
#include <iomanip>
#include <map>
#include <set>
#include <cmath>
#include <stack>
#include <cmath>
#include <algorithm>
using namespace std;
#define max1 100001
#define inf -1
int main()
{
int n,i;
cin>>n;
vector<int>a(n);
for(i=0;i<n;i++)
cin>>a[i];
sort(a.begin(),a.end(),greater<int>());
int w=sqrt(n);
while(n%w!=0)w--;
int h=n/w;
int b[h][w];
int l=0,r=w-1,u=0,d=h-1;
int idx=0;
while(l<r&&u<d)
{
for(i=l;i<=r;i++)b[u][i]=a[idx++];
for(i=u+1;i<=d;i++)b[i][r]=a[idx++];
for(i=r-1;i>=l;i--)b[d][i]=a[idx++];
for(i=d-1;i>=u+1;i--)b[i][l]=a[idx++];
l++;u++;
r--;d--;
}
if(l==r)
for(i=u;i<=d;i++)b[i][r]=a[idx++];
else if(u==d)
for(i=l;i<=r;i++)b[d][i]=a[idx++];
for(i=0;i<h;i++)
{
cout<<b[i][0];
for(int j=1;j<w;j++)
cout<<' '<<b[i][j];
cout<<endl;
}
return 0;
}
0 0
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- 【PAT】1105. Spiral Matrix
- 1105. Spiral Matrix
- 1105. Spiral Matrix
- 1105. Spiral Matrix (25)
- 1105. Spiral Matrix (25)
- android bind aidl 实例理解
- MLlib中K-means流程
- 纯CSS实现的好看的边框
- linux系统在文件夹下查找含有指定字符串的文件的方法
- 1104. Sum of Number Segments
- 1105. Spiral Matrix
- 训练自己的Adaboost级联分类器并识别物体(二)
- tomcat中关于-Xms -Xmx -XX:PermSize -XX:MaxPermSize的理解和区别
- wireshark数据包分析
- php trait 学习笔记
- 1106. Lowest Price in Supply Chain
- scala 排序算法 直接插入排序
- 博为峰JavaEE技术文章 ——MyBatis Provider之@SelectProvider
- HTML--Position 定位