TYVJ P1026 犁田机器人 Label:水
背景
描述
因為FJ的田地有树和其他障碍物,所以FJ设定机器人去犁很多不同的长方形。这些长方形允许重叠。他给机器人下了P个指令,每个指令包含一个要犁长方形的地。这片田地由长方形的左下角和右上角坐标决定。他很好奇最后到底有多少个方格的地被犁过了。
一般来说,田地被分割為很多小方格。这些方格的边和x轴或y轴平行。田地的宽度為X个方格,高度為Y个方格 (1 <= X <= 240; 1 <= Y <= 240). FJ执行了I (1 <= I <= 200)个指令,每个指令包含4个整数:Xll, Yll, Xur, Yur (1 <= Xll <=Xur; Xll <= Xur <=X; 1 <= Yll <= Yur; Yll <= Yur <= Y), 分别是要犁的长方形的左下角坐标和右上角坐标。机器人会犁所有的横坐标在Xll..Xur并且纵坐标Yll..Yur范围内的所有方格的地。可能这个长方形会比你想像的多一行一列(就是说从第Xll列到第Xur列一共有Xur - Xll + 1列而不是Xur - Xll列)。
考虑一个6方格宽4方格高的田地。FJ进行了2个操作(如下),田地就被成"*"和"#"了。虽然一般被犁过的地看起来都是一样的。但是标成"#"可以更清晰地看出最近一次被犁的长方形。
...... **.... #####.
...... (1,1)(2,4) **.... (1,3)(5,4) #####.
...... **.... **....
...... **.... **....
一共14个方格的地被犁过了。
输入格式
* 第二行到第I+1行:第i+1行有四个整数Xll, Yll, Xur, Yur,表示第i个指令。
输出格式
测试样例1
输入
6 4 2
1 1 2 4
1 3 5 4
输出
14
代码
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
int X,Y,I,sum;
int map[][]; void fix(int x1,int y1,int x2,int y2){
for(int i=x1;i<=x2;i++){
for(int j=y1;j<=y2;j++){
map[i][j]=;
}
}
} int main(){
// freopen("01.txt","r",stdin);
scanf("%d%d%d",&X,&Y,&I);
for(int i=;i<=I;i++){
int x1,x2,y1,y2;
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
fix(x1,y1,x2,y2);
}
for(int i=;i<=X;i++){//检查x,y位置
for(int j=;j<=Y;j++){
if(map[i][j]) ++sum;
}
}
printf("%d\n",sum); return ;
}None
TYVJ P1026 犁田机器人 Label:水的更多相关文章
- [TYVJ] P1026 犁田机器人
犁田机器人 背景 Background USACO OCT 09 2ND 描述 Description Farmer John為了让自己从无穷无尽的犁田工作中解放出来,於是买了个新机器人帮助他犁田 ...
- P1026 犁田机器人
P1026 犁田机器人 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 USACO OCT 09 2ND 描述 Farmer John為了让自己从无穷无尽的犁 ...
- P2956 [USACO09OCT]机器人犁田The Robot Plow
题目描述 Farmer John has purchased a new robotic plow in order to relieve him from the drudgery of plowi ...
- TYVJ P1001 第K极值 Label:水
背景 成成第一次模拟赛 第一道 描述 给定一个长度为N(0<n<=10000)的序列,保证每一个序列中的数字a[i]是小于maxlongint的非负整数 ,编程要求求出整个序列中第k大的数 ...
- TYVJ P1053 字符串的展开 Label:字符 水
背景 NOIP2007年提高组第2道 描述 在初赛普及组的“阅读程序写结果”的问题中,我们曾给出一个字符串展开的例子:如果在输入的字符串中,含有类似于“d-h”或“4-8”的子串,我们就把它当作一种简 ...
- [ACM_模拟] UVA 12503 Robot Instructions [指令控制坐标轴上机器人移动 水]
Robot Instructions You have a robot standing on the origin of x axis. The robot will be given som ...
- 洛谷 P1144 最短路计数 Label:水
题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数. 接下来M行 ...
- Codeforces Round #355 (Div. 2) C. Vanya and Label 水题
C. Vanya and Label 题目连接: http://www.codeforces.com/contest/677/problem/C Description While walking d ...
- codeforces 355 div2 C. Vanya and Label 水题
C. Vanya and Label time limit per test 1 second memory limit per test 256 megabytes input standard i ...
随机推荐
- Nmap备忘单:从探索到漏洞利用(Part 5)
这是备忘单的最后一部分,在这里主要讲述漏洞评估和渗透测试. 数据库审计 列出数据库名称 nmap -sV --script=mysql-databases 192.168.195.130 上图并没有显 ...
- What is the difference between provider network and self-service network in OpenStack?
"self-service networking" allows users to create their own virtual networks, subnets, rout ...
- SQL union和union all的区别
Union因为要进行重复值扫描,所以效率低.如果合并没有刻意要删除重复行,那么就使用Union All 两个要联合的SQL语句 字段个数必须一样,而且字段类型要“相容”(一致): 如果我们需要将两个 ...
- Xenomai
http://blog.csdn.net/robertsong2004/article/details/43889249 嵌入式系统的开发,如果对实时性要求不高,就可以使用Linux自身的实时补丁实现 ...
- 【转】cas注册后自动登录
本文转自:http://denger.iteye.com/blog/805743 1. 关于CAS的介绍不再累述,我想涉及过SSO同学应该都会对该框架所有了解,我们目前项目采用的CAS Server ...
- java获取本机IP地址
转载自:http://blog.csdn.net/thunder09/article/details/5360251 在网上找了几个用java获取本机IP地址的代码,发现都少都有些不完美,自己整理了一 ...
- 在Spring3中,配置DataSource的方法有6种。
第一种:beans.xml Xml代码 收藏代码<bean id="dataSource" class="org.apache.commons.dbcp.Basic ...
- 修改iptables防火墙规则解决vsftp登录后不显示文件目录的问题
如果设置防火墙开端口可能只是常用的几个端口,这样很可能导vsftpd在被动模式时无法启动随机端口,从而造成客户端的FTP无法列出目录这样胡问题.解决方式很简单,给 vsftpd增加随机端口范围,然后把 ...
- 5.建造者模式(Builder Pattern)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Python语言开发的一些问题
1.Python是如何进行内存管理的? Python引用了一个内存池(memory pool)机制,即Pymalloc机制(malloc:n.分配内存),用于管理对小块内存的申请和释放内存池(memo ...