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

中国英文政务网站建设域名备案

中国英文政务网站建设,域名备案,西安网站开发公司有哪家好,wordpress openid问题描述 小C发现了一种奇特的图案,叫做螺旋阵列。它由一串0和1组成,看起来像一个由外向内旋转的图形。小C想知道,能否根据给定的宽度来生成这样一个螺旋图案。 例如,宽度为5时的螺旋阵列如下: 11111 00001 11101 1…

问题描述

小C发现了一种奇特的图案,叫做螺旋阵列。它由一串0和1组成,看起来像一个由外向内旋转的图形。小C想知道,能否根据给定的宽度来生成这样一个螺旋图案。

例如,宽度为5时的螺旋阵列如下:

11111
00001
11101
10001
11111

宽度为10时的螺旋阵列如下:

1111111111
0000000001
1111111101
1000000101
1011110101
1010010101
1010000101
1011111101
1000000001
1111111111

小C想知道,对于任意给定的宽度 n,是否能生成对应的螺旋图案,并且以一个二维数组的形式输出。


测试样例

样例1:

输入:width = 5
输出:[[1, 1, 1, 1, 1], [0, 0, 0, 0, 1], [1, 1, 1, 0, 1], [1, 0, 0, 0, 1], [1, 1, 1, 1, 1]]

样例2:

输入:width = 8
输出:[[1, 1, 1, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 0, 1], [1, 0, 0, 0, 0, 1, 0, 1], [1, 0, 1, 0, 0, 1, 0, 1], [1, 0, 1, 1, 1, 1, 0, 1], [1, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1]]

样例3:

输入:width = 2
输出:[[1, 1], [0, 1]]

 

#include <cassert>
#include <iostream>
#include <vector>
#include <algorithm>using namespace std;std::vector<std::vector<int>> solution(int width) {// Ensure the input width is greater than 1assert(width > 1);// Handle special casesif (width == 2) {return {{1, 1}, {0, 1}};}if (width == 3) {return {{1, 1, 1}, {0, 0, 1}, {1, 1, 1}};}// Recursively generate a smaller spiralvector<vector<int>> base = solution(width - 2);// Initialize the first two rowsvector<vector<int>> res;res.push_back(vector<int>(width, 1));res.push_back(vector<int>(width, 0));res[1][width - 1] = 1;// Add the smaller spiral in reverse order with bordersfor (int i = width - 3; i >= 0; i--) {vector<int> row = base[i];reverse(row.begin(), row.end());row.push_back(0);row.push_back(1);res.push_back(row);}// Fix the second last element of the last rowres[res.size() - 1][res[0].size() - 2] = 1;return res;
}int main() {// You can add more test cases herestd::vector<std::vector<int>> expected1 = {{1, 1, 1, 1, 1},{0, 0, 0, 0, 1},{1, 1, 1, 0, 1},{1, 0, 0, 0, 1},{1, 1, 1, 1, 1}};std::vector<std::vector<int>> expected2 = {{1, 1, 1, 1, 1, 1, 1, 1}, {0, 0, 0, 0, 0, 0, 0, 1},{1, 1, 1, 1, 1, 1, 0, 1}, {1, 0, 0, 0, 0, 1, 0, 1},{1, 0, 1, 0, 0, 1, 0, 1}, {1, 0, 1, 1, 1, 1, 0, 1},{1, 0, 0, 0, 0, 0, 0, 1}, {1, 1, 1, 1, 1, 1, 1, 1}};std::vector<std::vector<int>> expected3 = {{1, 1}, {0, 1}};std::cout << (solution(5) == expected1) << std::endl;std::cout << (solution(8) == expected2) << std::endl;std::cout << (solution(2) == expected3) << std::endl;return 0;
}

http://www.dtcms.com/wzjs/96802.html

相关文章:

  • 软件工程属于什么专业类别淘宝seo是什么意思啊
  • 房产网站建设价格哪里可以做
  • 怒江北京网站建设网络推广需要多少钱
  • 展馆展示设计公司招聘信息seo技术分享博客
  • 找生产厂家的网站网络推广外包公司排名
  • 东莞网站设计服务全网搜索软件
  • 网站会员收费怎么做网站免费发布与推广
  • 呼伦贝尔网站建设平台域名注册查询官网
  • 北京品牌网站开发atp最新排名
  • 网站前期建设浅谈一下网络营销的几个误区
  • 青岛工商注册核名查询系统郑州百度seo关键词
  • 喊别人做的网站不肯给代码百度app推广方法
  • 哈尔滨网站建设效果好教育培训机构官网
  • 网站及邮件系统建设合肥seo推广公司
  • 郑州公司网站建设服务一个自己的网站
  • 公司网站建设的视频教程百度推广多少钱
  • 百度竞价网站谁做郑州做网站公司排名
  • 上海购房网官网开鲁网站seo不用下载
  • 建个人网站精准ip地址查询工具
  • 抓取网站访客qqseo黑帽多久入门
  • 网站最好服务器关键词网站
  • 广州企立科技做网站建立自己的网站平台
  • 江苏公众科技网站建设搜狗站长工具平台
  • 手机网站分辨率做多大网络口碑营销
  • 电子商务公司网站怎么建百度权重4网站值多少钱
  • 怎么做网站调查表免费的个人网页
  • 做代收水果是什么网站seo搜索引擎优化营销案例
  • 郑州建网站哪个公司好网上国网app推广方案
  • 建设部网站关于乡建助理职责自媒体发布平台
  • 做网站什么是三网合一广告宣传方式有哪些