#include <bits/stdc++.h>


using namespace std;

#define VAR(a,b) __typeof(b) a=(b)




#define FOR(i,a,b) for (int _n(b), i(a); i < _n; i++)

#define FORD(i,a,b) for(int i=(a),_b=(b);i>=_b;--i)
#define FOREACH(it,c) for(VAR(it,(c).begin());it!=(c).end();++it)

#define REP(i,n) FOR(i,0,n)

#define ALL(c) (c).begin(), (c).end()

#define SORT(c) sort(ALL(c))

#define REVERSE(c) reverse(ALL(c))

#define UNIQUE(c) SORT(c),(c).resize(unique(ALL(c))-(c).begin())


#define INF 1000000000

#define X first

#define Y second

#define pb push_back

#define SZ(c) (c).size()

typedef pair<int, int> PII;
typedef vector<int> VI;

typedef vector<PII> VPII;

typedef vector<VI> VVI;

typedef long long LL;

#define MOD 1000000007





const int number_of_tits=500005;

int n,a[number_of_tits];
int relatively;
LL bit[number_of_tits];


void update_the_bit(int x)
{

    while(x<number_of_tits)

    {

        bit[x]+=1;

        x+=x&-x;

    }


}

LL query_the_bit(int x)
{

    LL ans=0;

    while(x>0)

    {

        ans+=bit[x];

        x-=x&-x;

    }

    return ans;

}

int main()

{

    cin>>n;

    LL to=0;

    int abbbrakadabra=0,abbbrakadabra_ka_jaddu=-1;

    REP(i,n)

    {

        cin>>a[i];

        to=to+(LL)(query_the_bit(number_of_tits)-query_the_bit(a[i]));

        update_the_bit(a[i]);

        relatively=abs(a[i]-i);

        if(abbbrakadabra<relatively)

        {

            abbbrakadabra=relatively;
            abbbrakadabra_ka_jaddu=i;

        }

    }
    memset(bit,0,sizeof(bit));

    int sanitary_pads=-1,maxy=-1;

    LL maxi=to;

    update_the_bit(a[abbbrakadabra_ka_jaddu]);
    for(int i=abbbrakadabra_ka_jaddu+1; i<n; i++)


    {

        update_the_bit(a[i]);
        LL temporary_upay=to-(query_the_bit(number_of_tits)-query_the_bit(a[i]))+(query_the_bit(a[i]-1));

        LL xx=query_the_bit(number_of_tits)-query_the_bit(a[abbbrakadabra_ka_jaddu]);

        if(a[abbbrakadabra_ka_jaddu]<a[i]) xx--;

        LL yy=query_the_bit(a[abbbrakadabra_ka_jaddu]-1);

        if(a[abbbrakadabra_ka_jaddu]>a[i]) yy--;

        temporary_upay=temporary_upay+xx-yy;

        if(maxi>temporary_upay)

        {
            maxi=temporary_upay;
            sanitary_pads=abbbrakadabra_ka_jaddu;

            maxy=i;

        }

    }

    memset(bit,0,sizeof(bit));

    update_the_bit(a[abbbrakadabra_ka_jaddu]);

    for(int i=abbbrakadabra_ka_jaddu-1; i>=0; i--)

    {

        update_the_bit(a[i]);
        LL temporary_upay=to-(query_the_bit(number_of_tits)-query_the_bit(a[abbbrakadabra_ka_jaddu]))+(query_the_bit(a
[abbbrakadabra_ka_jaddu]-1));

        LL xx=query_the_bit(number_of_tits)-query_the_bit(a[i]);

        if(a[abbbrakadabra_ka_jaddu]>a[i]) xx--;

        LL yy=query_the_bit(a[i]-1);

        if(a[abbbrakadabra_ka_jaddu]<a[i]) yy--;
        temporary_upay=temporary_upay+xx-yy;

        if(maxi>=temporary_upay)

        {

            maxi=temporary_upay;

            sanitary_pads=abbbrakadabra_ka_jaddu;

            maxy=i;

        }

    }
    if(sanitary_pads!=-1) 

printf("%d %d\n",min(sanitary_pads,maxy)+1,max(sanitary_pads,maxy)+1);

    else printf("Cool Array\n");



}