当前位置: 首页 > news >正文

蛇形填数 rust解法

蛇形填数。
在n×n方阵里填入1,2,…,n×n,要求填成蛇形。例如,n=4时方阵为:
10 11 12 1
9 16 13 2
8 15 14 3
7 6 5 4

解法如下:

use std::io;fn main() {let mut buf = String::new();io::stdin().read_line(&mut buf).unwrap();let n: usize = buf.trim().parse().unwrap();let mut arr = vec![vec![0; n]; n];let mut i = 1;let mut x = 0;let mut y = n - 1;arr[x][y] = 1;while i < n * n {while x + 1 < n && arr[x + 1][y] == 0 {i += 1;x += 1;arr[x][y] = i;}while y > 0 && arr[x][y - 1] == 0 {i += 1;y -= 1;arr[x][y] = i;}while x > 0 && arr[x - 1][y] == 0 {i += 1;x -= 1;arr[x][y] = i;}while y + 1 < n && arr[x][y + 1] == 0 {i += 1;y += 1;arr[x][y] = i;}}for row in &arr {println!("{:?}", row);}
}
http://www.lryc.cn/news/170329.html

相关文章:

  • 一文探索SD-WAN技术进阶后与MPLS的区别
  • RocketMq(四)消息分类
  • ip地址怎么改网速快
  • 植物大战僵尸各种僵尸攻略(四)
  • main函数中两个参数的作用
  • 华为OD机试 - 连续字母长度 - 字符串(Java 2023 B卷 100分)
  • 想要精通算法和SQL的成长之路 - 填充书架
  • 【ROS入门】ROS的核心概念
  • Python爬虫从端到端抓取网页
  • 这10款类似Stable Diffusion的ai绘图软件,你了解多少?
  • 部署ik分词器
  • 基于STM32+华为云IOT设计的智能垃圾桶
  • 板子接线图
  • Python练习之选择与循环
  • MySQL5.7开启通用日志功能
  • WPF控件模板
  • vue移动端页面适配
  • Ei Scopus 双检索 |第三届信息与通信工程国际会议国际会议(JCICE 2024)
  • ChatGPT实战-Embeddings打造定制化AI智能客服
  • C语言指针,深度长文全面讲解
  • 云桌面打开部署在linux的服务特别卡 怎么解决
  • day5ARM
  • 旋转链表-双指针思想-LeetCode61
  • 使用自定义XML配置文件在.NET桌面程序中保存设置
  • 1787_函数指针的使用
  • 解决nomachine扫描不出ip问题
  • Web 3.0 发展到什么水平了?
  • 大模型:如何利用旧的tokenizer训练出一个新的来?
  • 【LeetCode-中等题】107. 二叉树的层序遍历 II
  • 斯坦福联合培养博士|专科生的逆袭之路