A. Laptops

A. Laptops

One day Dima and Alex had an argument about the price and quality of laptops. Dima thinks that the more expensive a laptop is, the better it is. Alex disagrees. Alex thinks that there are two laptops, such that the price of the first laptop is less (strictly smaller) than the price of the second laptop but the quality of the first laptop is higher (strictly greater) than the quality of the second laptop.

Please, check the guess of Alex. You are given descriptions of n laptops. Determine whether two described above laptops exist.

Input
The first line contains an integer n (1 ≤ n ≤ 105) — the number of laptops.

Next n lines contain two integers each, a i and b i (1 ≤ a i, b i ≤ n), where a i is the price of the i-th laptop, and b i is the number that represents the quality of the i-th laptop (the larger the number is, the higher is the quality).

All a i are distinct. All b i are distinct.

Output
If Alex is correct, print “Happy Alex”, otherwise print “Poor Alex” (without the quotes).

#include
#include
#include
#include
#include
using namespace std;
int Comp(const void*a, const void*b)
{
	return  *(int*)a - *(int*)b;
}
int max(int a, int b)
{
	if (a > b)
	{
		return a;
	}
	return b;
}
int main()
{
	int n;
	int a, b;
	int num[100001] = { 0 };
	cin >> n;
	for (int i = 0; i < n; i++)
	{
		cin >> a >> b;
		num[a] = b;
	}
	int TS = num[0];
	for (int i = 0; i <=n; i++)
	{
		if (num[i] != 0)
		{
			if (num[i] < TS)
			{
				cout << "Happy Alex" << endl;
				return 0;
			}
			TS = num[i];
		}
	}
	cout << "Poor Alex" << endl;
	return 0;
}

你可能感兴趣的:(算法)