A 现代艺术
|
问题描述
何老板是一个现代派的艺术家。他在一块由n*n的方格构成的画布上作画。一开始,所有格子里的数字都是0。
何老板作画的方式很独特,他先后给N^2个子矩阵涂上了颜色,每次都是从1到N^2这些数字中选一个给对应矩阵全部填上该数字。比如:
第1步,他选数字2填在了一个子矩阵上。如下图:
2 2 2 0
2 2 2 0
2 2 2 0
0 0 0 0
第2步,他用数字7填在了一个子矩阵上:
2 2 2 0
2 7 7 7
2 7 7 7
0 0 0 0
第3步,他用数字3填在了一个子矩阵上:
2 2 3 0
2 7 3 7
2 7 7 7
0 0 0 0
以此填涂下去,直到1到N^2中每个数字都被用过了一次(每个数字只能被使用一次)。
现在何老板已经完成了他的艺术创作,你得到了最后的图形。
何老板问你,根据这幅作品,你能够推断出第一步填涂的数字可能是哪些呢?输出第一步填涂可能的数字的个数。
输入格式
第一行,一个整数N(1<=N<=1000)
接下来一个N*N的数字矩阵,表示画作最终的样子。
输出格式
一个整数,表示第一步填涂可能的数字个数。
样例输入
4
2 2 3 0
2 7 3 7
2 7 7 7
0 0 0 0
样例输出
14
提示
样例解释,数字2是最先被填涂的。数字3显然在数字7后才填涂,数字7显然在数字2后被填涂。
因为看不到其他数字,所以,这些数字有可能出现在数字2之前,后来被覆盖了。
A 现代艺术的更多相关文章
- 洛谷P3668 [USACO17OPEN]Modern Art 2 现代艺术2
P3668 [USACO17OPEN]Modern Art 2 现代艺术2 题目背景 小TY的同学HF也想创作艺术 HF只有一块长条状的画布(画条),所以每一次涂色只能涂上连续几个单位的颜料,同样新的 ...
- [LuoguP3668][USACO17OPEN]现代艺术2
[LuoguP3668][USACO17OPEN]Modern Art2(Link) 现在你有一块长为\(N\)的画布,每次可以选择一段连续的区间进行颜色填涂,新颜色会覆盖旧颜色.每一次填涂都要耗费一 ...
- [luoguP3668] [USACO17OPEN]Modern Art 2 现代艺术2(栈)
传送门 还是一个字——栈 然后加一大堆特判 至少我是这么做的 我的代码 #include <cstdio> #include <iostream> #define N 1000 ...
- Lesson 23 A new house
Text I had a letter from my sister yesterday. She lives in Nigeria. In her letter, she said that she ...
- linux ascii艺术与ansi艺术
Linux终端下的ASCII艺术 http://zh.wikipedia.org/zh-tw/%E9%9B%BB%E5%AD%90%E9%81%8A%E6%88%B2%E5%8F%B2 电子游戏史 h ...
- ARM与x86之3--蝶变ARM
http://blog.sina.com.cn/s/blog_6472c4cc0100lqr8.html 蝶变ARM 1929年开始的经济大萧条,改变了世界格局.前苏联的风景独好,使得相当多的人选择了 ...
- bzoj2592: [Usaco2012 Feb]Symmetry
Description After taking a modern art class, Farmer John has become interested in finding geometric ...
- 使用 CodeIgniter 框架快速开发 PHP 应用(七)
原文:使用 CodeIgniter 框架快速开发 PHP 应用(七) CodeIgniter 和对象这是玩家章节.它讲述的是 CodeIgniter 的工作原理,也就是揭开CI头上'神秘的面纱'.如果 ...
- CSS案例
1.美团网效果 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> ...
随机推荐
- JZOJ 5246. 【NOIP2017模拟8.8A组】Trip(trip)
5246. [NOIP2017模拟8.8A组]Trip(trip) (File IO): input:trip.in output:trip.out Time Limits: 1500 ms Memo ...
- jenkins-构建job成功后自动打tag到git仓库
需求:最近开发同事提出了个要求,每当Jenkins执行上线部署完成后,对当前代码进行自动打TAG到git仓库中,且只有当部署成功后才进行打TAG,防止构建失败也进行打过多的垃圾tag,然后便于下次进行 ...
- 编译 AR9271 wifi 网卡固件 htc_9271.fw
下载最新的固件源码https://github.com/qca/open-ath9k-htc-firmware/archive/1.4.0.zip得到 open-ath9k-htc-firmware- ...
- 新手学黑客攻防-黑客攻击电脑方式和认识IP地址
听说过黑客,没见过黑客,从最基础的开始学习,让我能在互联网中保护自己的隐私安全和信息安全. 黑客攻击电脑方式 黑客攻击的方式多种多样,但常见的只有以下几种,基本上每个黑客都会用到: 网络报文嗅探 网络 ...
- java网络编程——多线程数据收发并行
基本介绍与思路 收发并行 前一篇博客中,完成了客户端与服务端的简单TCP交互,但这种交互是触发式的:客户端发送一条消息,服务端收到后再回送一条.没有做到收发并行.收发并行的字面意思很容易理解,即数据的 ...
- 用原生JS实现爱奇艺首页导航栏
以下是爱奇艺首页的一个导航栏,用原生js写的,静态页面效果如下: 代码如下: <html> <head> <title>爱奇艺</title> < ...
- 人见人爱A-B 题解
参加过上个月月赛的同学一定还记得其中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集,今天我们这个A-B求的是两个集合的差,就是做集合的减法运算.(当然,大家都知道集合的定义,就是 ...
- c# 导出excel的两种常见方法
1,不是用第三方插件(html直接输出) StringBuilder ssb = new StringBuilder(); StringBuilder sb = new StringBuilder() ...
- IE8使用chrome内核渲染
1 第一步 https://download.csdn.net/download/qq_34626479/11223448 下载chrome frame安装包; 2 第二步 网页头部添加一行 ...
- Spinner 用法
</Spinner> <TextView android:layout_width="wrap_content" android:layout_height=&q ...