「暑期训练」「Brute Force」 Restoring Painting (CFR353D2B)
题意
给定一定条件,问符合的矩阵有几种。
分析
见了鬼了,这破题谁加的brute force的标签,素质极差。因为范围是1e5,那你平方(枚举算法)的复杂度必然爆。
然后你就会思考其中奥妙无穷的数学规律(并没有),推出一系列相关的等式。
然后坑爹无穷的来了:边界问题。
不想说了,心累,自己看代码吧。
代码
#include <bits/stdc++.h>
#define MP make_pair
#define PB push_back
#define fi first
#define se second
#define ZERO(x) memset((x), 0, sizeof(x))
#define ALL(x) (x).begin(),(x).end()
#define rep(i, a, b) for (int i = (a); i <= (b); ++i)
#define per(i, a, b) for (int i = (a); i >= (b); --i)
#define QUICKIO \
ios::sync_with_stdio(false); \
cin.tie(0); \
cout.tie(0);
using namespace std;
using ll = long long;
using ull = unsigned long long;
using pi = pair<int, int>;
using pii = pair<int, pi>;
template<typename T>
T read()
{
T tmp; cin>>tmp;
return tmp;
}
int main()
{
ll n,a,b,c,d;
cin>>n>>a>>b>>c>>d;
ll delta1=c-b,
delta2=d-a,
delta3=(c+d)-(a+b);
//cout<<delta1<<" "<<delta2<<" "<<delta3<<endl;
ll ri=min(min(delta1,min(delta2,delta3))+n,n),
li=max(max(delta1,max(delta2,delta3))+1,1ll);
if(li<=ri && li<=n && ri>=1)
{
cout<<(ri-li+1)*n<<endl;
}
else cout<<0<<endl;
return 0;
}
「暑期训练」「Brute Force」 Restoring Painting (CFR353D2B)的更多相关文章
- 「暑期训练」「Brute Force」 Bitonix' Patrol (CFR134D1D)
题意 有n" role="presentation">nn个站点,排成圆形,每站间距m" role="presentation"> ...
- 「暑期训练」「Brute Force」 Multiplication Table (CFR256D2D)
题意 给定一矩阵M" role="presentation">MM,Mij=ij" role="presentation">Mi ...
- 「暑期训练」「Brute Force」 Optimal Point on a Line (Educational Codeforces Round 16, B)
题意 You are given n points on a line with their coordinates $x_i$. Find the point x so the sum of dis ...
- 「暑期训练」「Brute Force」 Money Transfers (CFR353D2C)
题目 分析 这个Rnd353真是神仙题层出不穷啊,大力脑筋急转弯- - 不过问题也在我思维江化上.思考任何一种算法都得有一个“锚点”,就是说最笨的方法怎么办.为什么要这么思考,因为这样思考最符合我们的 ...
- 「暑期训练」「Brute Force」 Far Relative’s Problem (CFR343D2B)
题意 之后补 分析 我哭了,强行增加自己的思考复杂度...明明一道尬写的题- -(往区间贪心方向想了 其实完全没必要,注意到只有366天,直接穷举判断即可. 代码 #include <bits/ ...
- 「暑期训练」「基础DP」 Common Subsequence (POJ-1458)
题意与分析 很简单:求最长公共子序列. 注意子序列与子串的差别:一个不连续一个连续.一份比较好的参考资料见:https://segmentfault.com/a/1190000002641054 状态 ...
- 「暑期训练」「基础DP」免费馅饼(HDU-1176)
题意与分析 中文题就不讲题意了.我是真的菜,菜出声. 不妨思考一下,限制了我们决策的有哪些因素?一,所在的位置:二,所在的时间.还有吗?没有了,所以设dp[i][j]" role=" ...
- 「暑期训练」「基础DP」FATE(HDU-2159)
题意与分析 学习本题的时候遇到了一定的困难.看了题解才知道这是二重背包.本题的实质是二重完全背包.二维费用的背包问题是指:对于每件物品,具有两种不同的费用,选择这件物品必须同时付出这两种代价:对于每种 ...
- 「暑期训练」「基础DP」 Monkey and Banana (HDU-1069)
题意与分析 给定立方体(个数不限),求最多能堆叠(堆叠要求上方的方块严格小于下方方块)的高度. 表面上个数不限,问题是堆叠的要求决定了每个方块最多可以使用三次.然后就是对3n" role=& ...
随机推荐
- Vue nodejs商城-订单模块
一.订单列表渲染 新建OrderConfirm.vue订单确认页面,添加路由 src/router/index.js添加路由 import OrderConfirm from '@/views/Ord ...
- Openresty最佳案例 | 第5篇:http和C_json模块
转载请标明出处: http://blog.csdn.net/forezp/article/details/78616672 本文出自方志朋的博客 http客户端 Openresty没有提供默认的Htt ...
- Python常用模块之re
1.正则表达式规则 2.Python正则常用模块 2.1.re.match与re.search 函数说明:re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match ...
- spring入门(八) spring mvc设置默认首页
1.web.xml配置如下 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3// ...
- 微信小程序学习笔记(一)
1.目录及文件构成 1.1 根目录下 ** app.js 是小程序的脚本代码,用来监听并处理小程序的生命周期函数.声明全局变量. ** app.json 是对整个小程序的全局配置,配置小程序是由哪些页 ...
- 姆洋自主研发堆(heap)头文件
这是姆洋自主研发的heap头文件 将其录入IDE,并保存为heap.h,保存在存放C++头文件的文件夹里(我只知道Dev-C++是Dev-cpp/MinGW64/lib/gcc/x86_64-w64- ...
- POJ 1113--Wall(计算凸包)
Wall Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 40363 Accepted: 13754 Description On ...
- window系统下pycharm的破解配置
将C:\Windows\System32\drivers\etc\hosts内的写出: linux系统的话在 /etc/hosts,必须修改权限:sudo chmod a=rwx hosts 0.0. ...
- js中String 转化为 Date
<script> var s=["2008-8-1","2009/9/2","10/3/2010"]; for(var i=0; ...
- 修改二维码生成插件jquery.qrcode.js支持加入自定义LOGO
1,将jquery.qrcode.min.js和jquery添加到您的网页中 <script src="jquery.min.js"></script> & ...