美文网首页
CodeFoeces-1253A

CodeFoeces-1253A

作者: ss5smi | 来源:发表于2019-11-23 14:44 被阅读0次

题目

原题链接:A. Single Push

题意

给出a和b两组数组,可进行一次自l至r为数组a加x的操作。问可否通过此操作使两数组相同。
例,a = {1,2,3,4,5,6,7,8,9},进行1至3增加2的操作则可以得到a = {3,4,5,4,5,6,7,8,9}。

代码

#include<string>
#include<iostream>
using namespace std;
string cal(int a[], int b[],int n){
    int t = 0,flag = 0;
    for(int i=0;i<n;i++){
        if(a[i] <= b[i]){
            int tmp = b[i] - a[i];
            if(tmp != t && flag == 0){
                t = tmp;
                flag = 1;
            }else if(flag == 1){
                if(tmp == 0 || tmp == t) t = tmp; 
                else return "NO";
            }
        }else{
            return "NO";
        }
    }
    return "YES";
}
int main(){
    int t,n,a[100000],b[100000];
    cin>>t;
    while(t--){
        cin>>n;
        for(int i=0;i<n;i++){
            cin>>a[i];
        }
        for(int i=0;i<n;i++){
            cin>>b[i];
        }
        cout<<cal(a,b,n)<<endl;
    }
    return 0;
}

相关文章

  • CodeFoeces-1253A

    题目 原题链接:A. Single Push 题意 给出a和b两组数组,可进行一次自l至r为数组a加x的操作。问可...

网友评论

      本文标题:CodeFoeces-1253A

      本文链接:https://www.haomeiwen.com/subject/pzocwctx.html