将位置也视为一种资源。位置与金币之和,如果存在重复,则sad。
#include<bits/stdc++.h>
using namespace std;
const int MAXN=200200;
int a[MAXN];
int main()
{
int n,i;
while(~scanf("%d",&n))
{
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
a[i]+=i;
}
sort(a+1,a+n+1);
for(i=2;i<=n;i++)
{
if(a[i]==a[i-1])
break;
}
if(i<=n)
printf("Sad\n");
else
printf("Happy\n");
}
}