题目描述

有一个 H 行 W 列的网格矩阵。现在有 N 种颜色,编号 1 到 N。

- 对于每种颜色,即每个 i(1≤i≤N),恰好有 ai 个网格被涂成颜色 i。这里 a1+a2+...+aN=H×W

- 对于每种颜色,即每个 i(1≤i≤N),所有被涂成第 i 种颜色的网格是联通的。

找到一种网格矩阵的涂色方案,使得上述两个条件得以满足。可以证明,方案是存在的。

输入

第一行两个整数 H 和 W。

第二行一个整数 N。

第三行 N 个整数,a1,a2,...,aN。

输出

输出 H 行,每行 W 个整数,分别代表 ci,1,....,ci,W。

样例输入输出

样例输入 #1

2 2
3
2 1 1

样例输出 #1

1 1
3 2

样例输入 #2

3 5
5
1 2 3 4 5

样例输出 #2

2 5 5 5 3
2 5 4 5 3
1 4 4 4 3

样例输入 #3

1 1
1
1

样例输出 #3

1

数据范围

1≤H,W≤100

1≤N≤H×W

ai≥1

思路:

#include<iostream>
#include<fstream>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
int n,m,t,a[10010],k,b[110][110];
int main(){cin>>n>>m>>t;for(int i=1;i<=t;i++){cin>>a[i];}k=1;for(int i=1;i<=n;i++){if(i%2==1){for(int j=1;j<=m;j++){if(a[k]==0){k++;}a[k]--;b[i][j]=k;}}else{for(int j=m;j>=1;j--){if(a[k]==0){k++;}a[k]--;b[i][j]=k;}}}for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cout<<b[i][j]<<" ";}cout<<endl;}return 0;
}

问题 C: 网格涂色相关推荐

  1. 2023-02-11:给你两个整数 m 和 n 。构造一个 m x n 的网格,其中每个单元格最开始是白色, 请你用 红、绿、蓝 三种颜色为每个单元格涂色。所有单元格都需要被涂色, 涂色方案需要满足:

    2023-02-11:给你两个整数 m 和 n .构造一个 m x n 的网格,其中每个单元格最开始是白色, 请你用 红.绿.蓝 三种颜色为每个单元格涂色.所有单元格都需要被涂色, 涂色方案需要满足: ...

  2. 【数据结构与算法】之给Nx3网格图涂色的方案数的求解算法

    一.题目要求 你有一个 n x 3 的网格图 grid ,你需要用 红,黄,绿 三种颜色之一给每一个格子上色,且确保相邻格子颜色不同(也就是有相同水平边或者垂直边的格子颜色不同). 给你网格图的行数 ...

  3. LeetCode 1411. 给 N x 3 网格图涂色的方案数(数学)

    1. 题目 你有一个 n x 3 的网格图 grid ,你需要用 红,黄,绿 三种颜色之一给每一个格子上色,且确保相邻格子颜色不同(也就是有相同水平边或者垂直边的格子颜色不同). 给你网格图的行数 n ...

  4. LeetCoed 5383. 给 N x 3 网格图涂色的方案数

    5383. 给 N x 3 网格图涂色的方案数 分类:ABA, ABC各6种,每个ABA可与2ABC+3ABA结合, 每个ABC可与2ABC+2ABA结合 class Solution:def num ...

  5. leetcode 5383. 给 N x 3 网格图涂色的方案数

    leetcode 5383. 给 N x 3 网格图涂色的方案数 来源:力扣(LeetCode) 你有一个 n x 3 的网格图 grid ,你需要用 红,黄,绿 三种颜色之一给每一个格子上色,且确保 ...

  6. 用ECS做HexMap:利用RenderMesh为六边形涂色

    基于Unity2019最新ECS架构开发MMO游戏笔记18 为六边形涂色 链接相邻单元 颜色混合 更新计划 作者的话 ECS系列目录 ECS官方示例1:ForEach ECS官方案例2:IJobFor ...

  7. leetcode 给N x 3网络图涂色的方案数

    1.题目详情       leetcode 给N x 3网络图涂色的方案数 你有一个 n x 3 的网格图 grid ,你需要用 红,黄,绿 三种颜色之一给每一个格子上色,且确保相邻格子颜色不同(也就 ...

  8. OpenCV(一)图像读取与新建、图像显示、操作图像像素(2种涂色并比较算法优劣、输出RGB)

    目录 一.读取图像与新建图像 1.读取图像 2.新建图像 二.显示图像 1.过程 2.代码 3.运行效果 三.操作图像像素 1.逐RGB涂色(单循环)(快) 1-1.过程 2-2.代码 2-3.运行结 ...

  9. bzoj 2375: 疯狂的涂色

    2375: 疯狂的涂色 Time Limit: 5 Sec  Memory Limit: 128 MB Description 小t非常喜爱画画,但是他还是一个初学者.他最近费尽千辛万苦才拜到已仙逝的 ...

最新文章

  1. python 小说-用python给自己做一款小说阅读器过程详解
  2. 小半计算机谱子,小半 _桃李醉春风个人制谱园地_中国曲谱网
  3. 2021年新高考八省联考成绩查询福建,2021福建八省联考成绩查询时间
  4. MongoDB 学习(一)安装配置和简单应用
  5. 数据中心里的应急关机技术
  6. [css] 说说你对CSS样式覆盖规则的理解
  7. android图片适配到裁剪框,Android图片剪裁-调用系统实现,完美适配魅族等机型
  8. 每周一书-2016年8月28日到9月4日获奖读者公布
  9. leetcode - 56. 合并区间
  10. 安装了email模块还是报错_官网的Pyngl和Pynio安装方法会报错!正确的在这里!
  11. 杨振宁惹谁了?(zz)
  12. Linpack的安装与测试(Mpi+Goto+hpl)
  13. springClude简单配置
  14. SET NAMES utf8mb4
  15. FMS4.5 (Flash media server)视频服务器安装和配置以及pomelo聊天室的调用
  16. 男人要知道的40条忠告
  17. JavaScript数据结构与算法 - 树
  18. 2021-08-14王汕8.15黄金指导】黄金,下周一黄金走势分析,外汇黄金实时策略指导
  19. 【Kaggle】如何举办你的比赛?
  20. Windows10安装NVM

热门文章

  1. 如何做到推广链接的落地页链接实现无变化跳转?
  2. discuz 如何去掉:导读-最新发表
  3. 计算机图形图像学的专业特性,计算机图形学第1_5章课后习题参考答案
  4. /boot空间不足的解决办法
  5. 1.《SQL必知必会》第五版 附录A样例表的添加
  6. Linux设备驱动之usb设备驱动详解
  7. JS实现动态添加和删除div
  8. 3星|《混乱》:案例比较有趣,推导过程和结论略牵强
  9. ESXi+黑群晖 由静态ip改回DHCP
  10. UON:《Detecting Unexpected Obstacles for Self-Driving Cars...》论文阅读与总结