首页 > 编程语言 >算法刷题记录:回行矩阵(未AC,TLE了)

算法刷题记录:回行矩阵(未AC,TLE了)

时间:2023-05-28 11:47:27浏览次数:57  
标签:AC TLE ++ cnt -- while 回行 dx dy

题目链接:

https://ac.nowcoder.com/acm/contest/19306/1026

题目分析

这种题,画个图,模拟就对啦。

TLE代码

#include <iostream>

using namespace std;

int n, cnt;
int w[25][25];

int main()
{
    cin >> n;
    
    // 构建框架
    int dx = 1, dy = 1;
    while (1)
    {
        while (dy <= n) w[dx][dy ++ ] = ++ cnt;
        -- dy;
        while (dx <= n) w[ ++ dx][dy] = ++ cnt; 
        -- dx;
        while (dy >= 1) w[dx][ -- dy] = cnt ++ ;
        ++ dy, -- dx, -- cnt;
        while (w[dx][dy] == 0) w[dx -- ][dy] = cnt ++ ;
        break;
    }
    // cout << dx << ' ' << dy << ' ' << cnt << endl;
    ++ dx; ++ dy, -- cnt;
    while (1)
    {
        if (w[dx][dy] && w[dx - 1][dy] 
            && w[dx + 1][dy] && w[dx][dy - 1] 
            && w[dx][dy + 1]) break;
        // >
        while (!w[dx][dy]) w[dx][dy ++ ] = ++ cnt;
        // v
        -- dy;
        while (!w[ ++ dx][dy]) w[dx][dy] = ++ cnt;
        // <
        -- dx;
        while (!w[dx][ -- dy]) w[dx][dy] = ++ cnt;
        // ^
        ++ dy;
        while (!w[ -- dx][dy]) w[dx][dy] = ++ cnt;
        ++ dx, ++ dy;
    }
    
    for (int i = 1; i <= n; ++ i)
    {
        for (int j = 1; j <= n; ++ j)
            cout << w[i][j] << ' ';
        cout << endl;
    }
}

标签:AC,TLE,++,cnt,--,while,回行,dx,dy
From: https://www.cnblogs.com/ClockParadox43/p/17437986.html

相关文章

  • MAC中文版 Final Cut Pro X(FCPX) V10.6.6 专属视频剪辑后期工具安装教程
    MAC中文版FinalCutProX(FCPX)V10.6.6专属视频剪辑后期工具安装教程FinalCutProX又名FCPX,是MAC上非常不错的视频非线性剪辑软件,它剪辑速度超凡,具有先进的调色功能、HDR视频支持,以及ProResRAW,让剪辑、音轨、图形特效、整片输出,支持主流的摄像机格式,是专业视频剪辑领......
  • 【React工作记录七十一】直接用ref控制子组件弹框的开启
     前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语如何直接通过父组件直接改变子组件的状态编......
  • 【React工作记录七十二】时间秒转换为毫秒
     前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语歌谣时间秒转换为毫秒编辑 核心代码getTim......
  • apache配置文件之虚拟主机配置
    虚拟主机的配置(1)基于IP地址的虚拟主机配置Listen80<VirtualHost172.20.30.40>DocumentRoot/www/example1ServerNamewww.example1.com</VirtualHost><VirtualHost172.20.30.50>DocumentRoot/www/example2ServerNamewww.example2.......
  • apache几种工作模式对比
    apache2主要的优势就是对多处理器的支持更好,在编译时同过使用--with-mpm选项来决定apache2的工作模式。如果知道当前的apache2使用什么工作机制,可以通过httpd-l命令列出apache的所有模块,就可以知道其工作方式:prefork:如果httpd-l列出prefork.c,则需要对下面的段进行配置:<IfM......
  • 【蓝桥杯集训·每日一题】AcWing 4309. 消灭老鼠
    写在前面本人CSDN博客主页:这里一、题目1、原题链接4309.消灭老鼠2、题目描述约翰的农场可以看作一个二维平面。农场中有n个老鼠,在毁坏着农田。第i个老鼠的位置坐标为(xi,yi)。不同老鼠可能位于同一位置。在(x0,y0)处,装有一个双向发射的激光枪,该位置没有老鼠。激光枪每次发......
  • 【蓝桥杯集训·每日一题】AcWing 3625. 幂次方
    写在前面本人CSDN博客主页:这里一、题目1、原题链接3625.幂次方2、题目描述对任意正整数N,计算XNmod233333的值。输入格式共一行,两个整数X和N。输出格式共一行,一个整数,表示XNmod233333的值。数据范围1≤X,N≤109输入样例:25输出样例:32二、解题报告1、思路分析(1)快速幂模板题......
  • net core中BackgroundService
    publicclassPeriodicBackgroundTask:BackgroundService{privatereadonlyTimeSpan_period=TimeSpan.FromSeconds(5);privatereadonlyILogger<PeriodicBackgroundTask>_logger;publicPeriodicBackgroundTask(ILogger<PeriodicBackgroundT......
  • Webpack and Babel — What are they, and how to use them with React
    摘抄自:https://medium.com/@agzuniverse/webpack-and-babel-what-are-they-and-how-to-use-them-with-react-5807afc82ca8WebpackandBabel—Toolswecan’tcodewithoutWe’llbeconfiguringbothoftheseforourReactproject,sofirsthere’saquickexplanation......
  • 允许Traceroute探测漏洞修复
    vim/etc/sysconfig/iptables-AINPUT-picmp-micmp--icmp-typetime-exceeded-jDROP-AOUTPUT-picmp-micmp--icmp-typetime-exceeded-jDROP重启iptables服务:systemctlrestartiptables检查新添加的规则是否有效,检查命令:iptables-L-n......