Codeforces Round #353 (Div. 2) B. Restoring Painting 水题

B. Restoring Painting

题目连接:

http://www.codeforces.com/contest/675/problem/B

Description

Vasya works as a watchman in the gallery. Unfortunately, one of the most expensive paintings was stolen while he was on duty. He doesn’t want to be fired, so he has to quickly restore the painting. He remembers some facts about it.

The painting is a square 3 × 3, each cell contains a single integer from 1 to n, and different cells may contain either different or equal integers.
The sum of integers in each of four squares 2 × 2 is equal to the sum of integers in the top left square 2 × 2.
Four elements a, b, c and d are known and are located as shown on the picture below.

Help Vasya find out the number of distinct squares the satisfy all the conditions above. Note, that this number may be equal to 0, meaning Vasya remembers something wrong.

Two squares are considered to be different, if there exists a cell that contains two different integers in different squares.

Input

The first line of the input contains five integers n, a, b, c and d (1 ≤ n ≤ 100 000, 1 ≤ a, b, c, d ≤ n) — maximum possible value of an integer in the cell and four integers that Vasya remembers.

Output

Print one integer — the number of distinct valid squares.

Sample Input

2 1 1 1 2

Sample Output

2

Hint

题意

给你一个33的矩阵,然后给你四个位置的数是多少

然后让你填五个位置的数,使得四个22正方形的值大小相同。

问你一共有多少种填数的方法

题解:

直接暴力枚举左上角,然后O(1)去check合不合法就好了

中间那个数无所谓的,肯定有n种方法

代码

#include<bits/stdc++.h>
using namespace std;

int main()
{
    long long n,a,b,c,d;
    long long ans=0;
    cin>>n>>a>>b>>c>>d;
    for(int i=1;i<=n;i++)
    {
        long long b2=b-c+i;
        long long c2=a-d+i;
        long long d2=b-c+c2;
        if(1<=b2&&b2<=n&&1<=c2&&c2<=n&&1<=d2&&d2<=n)
            ans++;
    }
    ans*=n;
    cout<<ans<<endl;
}
    原文作者:qscqesze
    原文地址: https://www.cnblogs.com/qscqesze/p/5500844.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞