#include <bits/stdc++.h>

using namespace std;

const int MAXN = 500005;

int N, M, A[MAXN], it[MAXN*4], C[MAXN];

int get(int u, int v, int l, int r, int k)
{
    if (u>r||v<l) return 0;
    if (u<=l&&v>=r) return it[k];
    int mid = (l+r)/2;
    int t1 = get(u,v,l,mid,(k<<1)), t2 = get(u,v,mid+1,r,(k<<1)+1);
    return t1+t2;
}

void update(int u, int l, int r, int k)
{
    it[k]++;
    if (l==r) return;
    int mid = (l+r)/2;
    if (u<=mid) update(u,l,mid,(k<<1)); else update(u,mid+1,r,(k<<1)+1);
}

void prep()
{
    M = 0;
    for(int i=1; i<=N; i++)
    {
        C[i] = get(0,A[i]-1,0,N+1,1);
        C[i] = A[i]-C[i]-1;
        M=max(M,C[i]);update(A[i],0,N+1,1);
    }
}

void tinh()
{
    int vt;
    for(int i=1; i<=N; i++)
    if (C[i]==M)
    {
        vt=i;
        break;
    }
    memset(it,0,sizeof(it));
    int t1=0, t2=0, res = 0, res2;
    for(int i=vt+1; i<=N; i++)
    {
        if (A[i]<A[vt]) t1++;
        if (A[i]>A[vt]) t2++;
        int g1 = get(0,A[i]-1,0,N+1,1);
        int g2 = get(A[i]+1,N+1,0,N+1,1);
        if (t1+g2-t2-g1>res)
        {
            res=t1+g2-t2-g1;
            res2=i;
        }
        update(A[i],0,N+1,1);
    }
    printf("%d %d\n",vt,res2);
}

int main()
{
  //  freopen("test.inp","r",stdin);
    scanf("%d",&N);
    for(int i=1; i<=N; i++)
        scanf("%d",&A[i]);
    prep();
    if (M==0)
    {
        printf("Cool Array\n");
        return 0;
    }
    tinh();
	return 0;
}