京东笔试题

题目大意简化为,有一种产品,其中有三个属性参数,ai bi ci,0<=ai,bi,ci<=10^6,如果第i行在数组中存在第j行的ai bi ci 都大于第i行的ai bi ci,则认为该产品为不合格产品,


输入 :

第一行输入n

0<n<=500000

为n个产品

接下来每一行为三个参数ai bi ci

输出,不合格的产品数:


例如:

输入:

3

1 2 3

4 5 6

7 8 9

输出:

2

因为第一行的三个参数小于第二行,第二行的三个参数小于第三行

下面是程序,采用了暴力解法:

#include <iostream>
#include <vector>

using namespace std;

int main()
{
	int N;
	cin >> N;
	vector<vector<int>> vec;
	for (int i = 0; i < N; ++i)
	{
		vector<int> v(3);
		for (int j = 0; j < 3; ++j)
			cin >> v[j];
		vec.push_back(v);
	}
	int count = 0;
	int index = 0;
	for (int i = 0; i < N; i++)
	{
		
		if (i == index)
		{
			continue;
		}
		if ((vec[i][0]>vec[index][0]) && (vec[i][1]>vec[index][1]) && (vec[i][2] > vec[index][2]))
		{
			count++;
			i = 0;
			index++;
		}
		
	}
	cout << count << endl;
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/zlb666/article/details/82562605