欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Equivalent Prefixes()

程序员文章站 2022-04-02 18:50:44
...

题目链接:https://ac.nowcoder.com/acm/contest/881/A

分析:
我们可以知道当确定了一个abcd的序列,然后在到后面增加一个e。构成abcde。增加的区间有de cde bcde abcde。
我们就需要从i- 1 往前依次枚举。
同时,在枚举的时候判断所加的e是否会影响这个区间。

#include"stdio.h"
#include"string.h"
#include"algorithm"
using namespace std;
 
int n;
int a[100100],b[100100];
 
int main()
{
    while(~scanf("%d",&n))
    {
        for(int i = 1; i <= n; i ++)
            scanf("%d",&a[i]);
        for(int i = 1; i <= n; i ++)
            scanf("%d",&b[i]);
        int ans = n;
        for(int i = 1; i <= n; i ++)
        {
            int mark = 1;
            for(int j = i - 1; j >= 1; j --)
            {
                if(a[j] > a[i] && b[j] > b[i]) continue;
                if(a[j] < a[i] && b[j] < b[i]) break;
               // printf("i = %d j = %d\n",i,j);
               // printf("a[i] = %d a[j] = %d b[i] = %d b[j] = %d\n",a[i],a[j],b[i],b[j]);
                mark = 0; break;
            }
            if(mark == 0)
            {
                ans = i - 1; break;
            }
        }
        printf("%d\n",ans);
    }
}
相关标签: 牛客多校