博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【UOJ 520】棋盘
阅读量:5371 次
发布时间:2019-06-15

本文共 836 字,大约阅读时间需要 2 分钟。

【题目描述】:

给定一个n*n的棋盘,放置m颗棋子,一个位置是被攻击的当且仅当这个存在某个棋子和这个位置是同行或者同列,你需要在每次放置一颗棋子过后,给出不被攻击的位置数目。

【输入描述】:

第一行两个整数n,m。

接下来m行,每行两个整数x,y表示放置的行和列。

【输出描述】:

每行输出一个数表示当前不被攻击的位置数目。

【样例输入】:

3 31 13 12 2

【样例输出】:

420

【时间限制、数据范围及描述】:

时间:1s 空间:512M

对于30%的数据,n≤100,m≤10000;

对于50%的数据,n≤10^3,m<=10^5;

对于100%的数据,n,m≤10^5。

 

题解:这道题我在洛谷上做过相似的题目,马上上一篇就是了。

堪称小学数学题哈哈哈。

#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;typedef long long ll;ll n,m,a,b,xx,yy;ll x[100005],y[100005];int main(){ scanf("%lld %lld",&n,&m); while(m--){ scanf("%lld %lld",&a,&b); if(x[a]==0) xx++; if(y[b]==0) yy++; x[a]=1; y[b]=1; printf("%lld\n",((n-xx)*(n-yy))); } return 0;}

 

转载于:https://www.cnblogs.com/wuhu-JJJ/p/11216168.html

你可能感兴趣的文章
lintcode83- Single Number II- midium
查看>>
[工具] Sublime Text 使用指南
查看>>
Web服务器的原理
查看>>
#10015 灯泡(无向图连通性+二分)
查看>>
Data Structure 基本概念
查看>>
[搬运] 写给 C# 开发人员的函数式编程
查看>>
core--线程池
查看>>
Spring Cloud Stream消费失败后的处理策略(三):使用DLQ队列(RabbitMQ)
查看>>
PKUWC2018 5/6
查看>>
As-If-Serial 理解
查看>>
洛谷P1005 矩阵取数游戏
查看>>
在Silverlight中使用HierarchicalDataTemplate为TreeView实现递归树状结构
查看>>
无线通信基础(一):无线网络演进
查看>>
关于python中带下划线的变量和函数 的意义
查看>>
linux清空日志文件内容 (转)
查看>>
MySQL-EXPLAIN执行计划Extra解释
查看>>
图片点击轮播(三)-----2017-04-05
查看>>
java中new一个对象和对象=null有什么区别
查看>>
字母和数字键的键码值(keyCode)
查看>>
01_1_准备ibatis环境
查看>>