第三次课上作业

题目描述

现在在一个空间内, 有n个已知的点, 接着询问你哪些点存在?
输入
一个n(1 ≤ n ≤ 10), 接下来每行三个整数x, y, z(1 ≤ x, y, z ≤ 100).
紧接着一个k(1 ≤ k ≤ 10)表示k次询问。
每次询问三个整数x, y, z(1 ≤ x, y , z ≤ 100).
若存在则输出"YES", 否则输出“NO”

我的答案

#include<stdio.h>
int main()
{
	int n,arr1[10][3],arr2[10][3],k,j=0;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	{
		scanf("%d %d %d",&arr1[i][0],&arr1[i][1],&arr1[i][2]);
	}
	scanf("%d",&k);
	for(int i=0;i<k;i++)
	{
		j=0;
		scanf("%d %d %d",&arr2[i][0],&arr2[i][1],&arr2[i][2]);
		for(int p=0;p<=n;p++)
		{
			if(arr2[i][0]==arr1[p][0]&&arr2[i][1]==arr1[p][1]&&arr2[i][2]==arr1[p][2])
			j++;
		}
		if(j!=0)printf("YES");
		else printf("NO");
	}
 return 0;
 } 

总结

时间略久,依旧有点对for循环次数的疑惑,并且我的方法太过直接感觉很麻烦。

posted @ 2022-04-06 12:45  孟夏十二  阅读(46)  评论(0编辑  收藏  举报