1333B - Kind Anton - CodeForces Solution


greedy implementation *1100

Please click on ads to support us..

Python Code:

for t in range(int(input())):
    n = int(input())

    a = list(map(int, input().split()))

    b = list(map(int, input().split()))

    s = set()

    for i in range(n):
        if (b[i] > a[i] and 1 not in s) or (b[i] < a[i] and -1 not in s):
            print('NO')
            break

        s.add(a[i])
    else:
        print('YES')

C++ Code:

#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define mii map<int,int>
#define vi vector<int>
#define vii vector<vector<int>>
#define pii pair<int,int>
#define ff first
#define ss second
#define pb push_back
#define pob pop_back
#define mod 1000000007
#define inf 1e14
#define fr(a, c) for (int(a) = 0; (a) < (c); (a)++)
#define frl(a, b, c) for (int(a) = (b); (a) <= (c); (a)++)
#define deb(x) cout<<#x<<x 
//bool present= binary_search(a.begin(),a.end(),4);
//auto it = lower_bound(a.begin(),a.end(),100);
//auto it = upperbound(a.begin(),a.end(),100);
void solve()
{
  int n,p=0,ne=0;
  cin>>n;
  int a[n],b[n];
  for(int i=0;i<n;i++)
 { cin>>a[i];
  if(a[i]>0)
  p++;
  else
  if(a[i]<0)
  ne++;}
  for(int i=0;i<n;i++)
  cin>>b[i];
  for(int i=n-1;i>=0;i--)
  {
    long long int m=b[i]-a[i];
    if(a[i]>0)
    p--;
    else
    if(a[i]<0)
    ne--;
    if(m<0)
    {
        if(ne!=0) continue;
        else
        {
            cout<<"NO\n";
            return;
        }
    }
    else
    if(m>0)
    {
        if(p!=0) continue;
        else
        {
            cout<<"NO\n";
            return;
        }
    }

  }
  cout<<"YES\n";
  return;
}

int main()
{
int t; cin>>t;
while(t--)
solve();

return 0;
}


Comments

Submit
0 Comments
More Questions

869. Reordered Power of 2
1593C - Save More Mice
1217. Minimum Cost to Move Chips to The Same Position
347. Top K Frequent Elements
1503. Last Moment Before All Ants Fall Out of a Plank
430. Flatten a Multilevel Doubly Linked List
1290. Convert Binary Number in a Linked List to Integer
1525. Number of Good Ways to Split a String
72. Edit Distance
563. Binary Tree Tilt
1306. Jump Game III
236. Lowest Common Ancestor of a Binary Tree
790. Domino and Tromino Tiling
878. Nth Magical Number
2099. Find Subsequence of Length K With the Largest Sum
1608A - Find Array
416. Partition Equal Subset Sum
1446. Consecutive Characters
1618A - Polycarp and Sums of Subsequences
1618B - Missing Bigram
938. Range Sum of BST
147. Insertion Sort List
310. Minimum Height Trees
2110. Number of Smooth Descent Periods of a Stock
2109. Adding Spaces to a String
2108. Find First Palindromic String in the Array
394. Decode String
902. Numbers At Most N Given Digit Set
221. Maximal Square
1200. Minimum Absolute Difference