CodeForces 939A(水题)

Description

As you could know there are no male planes nor female planes. However, each plane on Earth likes some other plane. There are n planes on Earth, numbered from 1 to n, and the plane with number i likes the plane with number fi, where 1 ≤ fi ≤ n and fi ≠ i.

We call a love triangle a situation in which plane A likes plane B, plane B likes plane C and plane C likes plane A. Find out if there is any love triangle on Earth.

Input

The first line contains a single integer n (2 ≤ n ≤ 5000) — the number of planes.

The second line contains n integers f1, f2, ..., fn (1 ≤ fi ≤ nfi ≠ i), meaning that the i-th plane likes the fi-th.

Output

Output «YES» if there is a love triangle consisting of planes on Earth. Otherwise, output «NO».

You can output any letter in lower case or in upper case.

Sample Input

Input
5
2 4 5 1 3
Output
YES
Input
5
5 5 5 5 1
Output
NO

Hint

In first example plane 2 likes plane 4, plane 4 likes plane 1, plane 1 likes plane 2 and that is a love triangle.

In second example there are no love triangles.



我也不知道你是怎么想的,谁说的如果从第一个数开始找找不到的话这个序列就没有三角恋了呢?会死循环???我打你啊!辛酸。

看一下这个题怎么做吧,这个题的特点是他是一个有限的查找,对于每一个数查三次就可以判断该数是否构成了三角恋,而不需要一开始想的那么复杂,从第一个数开始,模拟题目查找的过程。

对于这种有限次且次数不多的查找,一步到底进行判断。

AC代码:

#include<stdio.h>
#include<stdio.h>

int main()
{
    int number[5009];
    int i,p,j,y,n;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
        scanf("%d",&number[i]);
    for(i=1;i<=n;i++)
        if(number[number[number[i]]]==i)
        {
            printf("YES\n");
            break;
        }
    if(i>n)
        printf("NO\n");
    return 0;
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值