1721B - Deadly Laser - CodeForces Solution


brute force implementation

Please click on ads to support us..

Python Code:

def solve():
    n, m, x, y, d = map(int, input().split())
    if (y - d <= 1 or x + d >= n) and (y + d >= m or x - d <= 1):
        print(-1)
    else:
        print(n+m-2)


if __name__ == '__main__':
    t = int(input())
    for i in range(t):
        solve()

C++ Code:

#include<bits/stdc++.h>
using namespace std;
#define int long long int
#define PI 3.14159265358979323846  
#define MOD 1000000007
#define set_bits __builtin_popcountll
#define fastio() ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL)
//--------------------------------------------------------------------------//
//Pre-Defined Functions:

//Finding Nearest Power Of 2 Of Any Number--->O(log(n))
int near_pow(int q){
    int ans = (int)log2(q);
    return pow(2,ans);
}
void input_vector(vector<int> &v,int &n){
    for(int i{}; i<n; i++){
        int a{}; cin>>a; v.push_back(a);
    }
}


//-------------------------------------------------------------------------//
void tarankaaa(){
    int n{},m{},x{},y{},d{};
    cin>>n>>m>>x>>y>>d;
    
    if(x-d<=1 && y-d<=1){cout<<-1<<endl; return;}
    if(x+d>=n && y+d>=m){cout<<-1<<endl; return;}
    if(x-d<=1 && x+d>=n){cout<<-1<<endl; return;}
    if(y-d<=1 && y+d>=m){cout<<-1<<endl; return;}
    
    cout<<n+m-2<<endl;
    
}

//--------------------------------------------------------------------------//
int32_t main(){
#ifndef ONLINE_JUDGE
//for getting input from input.txt
freopen("input1.txt", "r", stdin);
//for writing output to output.txt
freopen("output.txt", "w", stdout);
#endif
    
    fastio();
    int t{1};
    cin>>t;
    while(t--){
        tarankaaa();
    }
}


Comments

Submit
0 Comments
More Questions

1002. Find Common Characters
1602A - Two Subsequences
1555A - PizzaForces
1607B - Odd Grasshopper
1084A - The Fair Nut and Elevator
1440B - Sum of Medians
1032A - Kitchen Utensils
1501B - Napoleon Cake
1584B - Coloring Rectangles
1562B - Scenes From a Memory
1521A - Nastia and Nearly Good Numbers
208. Implement Trie
1605B - Reverse Sort
1607C - Minimum Extraction
1604B - XOR Specia-LIS-t
1606B - Update Files
1598B - Groups
1602B - Divine Array
1594B - Special Numbers
1614A - Divan and a Store
2085. Count Common Words With One Occurrence
2089. Find Target Indices After Sorting Array
2090. K Radius Subarray Averages
2091. Removing Minimum and Maximum From Array
6. Zigzag Conversion
1612B - Special Permutation
1481. Least Number of Unique Integers after K Removals
1035. Uncrossed Lines
328. Odd Even Linked List
1219. Path with Maximum Gold