AcWing
  • 首页
  • 课程
  • 题库
  • 更多
    • 竞赛
    • 题解
    • 分享
    • 问答
    • 应用
    • 校园
  • 关闭
    历史记录
    清除记录
    猜你想搜
    AcWing热点
  • App
  • 登录/注册

AcWing 756. 蛇形矩阵    原题链接    简单

作者: 作者的头像   smzz ,  2025-06-11 00:52:24 · 山东 ,  所有人可见 ,  阅读 1


0


…

include[HTML_REMOVED]

define pb push_back

using namespace std;

const int N = 1e5 + 10;
const int NN = 3e7;

typedef long long ll;
typedef unsigned long long ull;
typedef pair[HTML_REMOVED] PII;

void solve()
{

ll n,m;

cin>>n>>m;

vector<vector<ll>> a(n + 10,vector<ll> (m + 10));

ll ans = 1;

ll left = 1,right = m;
ll up = 1,dn = n;

while(left <= right && up <= dn)
{
    for(int i = left;i <= right ;i++)
    {
        a[left][i] = ans ++;
    }

    for(int i = up + 1;i <= dn;i++)
    {
        a[i][right] = ans ++;
    }

    for(int i = right - 1;i >= left && up < dn;i--)
    {
        a[dn][i] = ans ++;
    }

    for(int i = dn - 1;i > up && left < right;i--)
    {
        a[i][left] = ans ++;
    }

    left ++ , right -- ,up ++,dn --;

}

for(int i = 1;i <= n;i++)
{
    for(int j = 1;j <= m;j++)
    {
        cout<<a[i][j]<<' ';
    }
    cout<<'\n';
}

}

int main()
{

ios::sync_with_stdio(false);
cin.tie(0);

ll T = 1;

//cin>>T;

while(T--)
{
    solve();
}

return 0;

}
…

0 评论

App 内打开
你确定删除吗?
1024
x

© 2018-2025 AcWing 版权所有  |  京ICP备2021015969号-2
用户协议  |  隐私政策  |  常见问题  |  联系我们
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标 qq图标
请输入绑定的邮箱地址
请输入注册信息