缘由C语言 dfs算法 十四届蓝桥杯 D飞机降落问题_编程语言-CSDN问答

void 飞机降落()
{
	int fj[11][4]{}, n = 0, m = 0, x = 0, j = 0;
	std::cin >> n >> m;
	//7 3 0 100 10 10 10 10 0 2 20 3 0 10 20 10 10 20 20 10 20 3 0 10 20 10 10 20 20 20 20 3 0 10 20 10 20 20 20 10 20 3 0 10 20 10 10 20 20 5 20 3 0 10 20 10 20 20 20 5 20 3 0 10 20 20 10 20 20 10 20
sr:if (n)
{
	   if (x < m)
	   {
		   std::cin >> fj[x][0] >> fj[x][1] >> fj[x][2];
		   ++x;
	   }
	   else
	   {
		   x = 0; j = m - 1;
	   px:if (j)
	   {
			  if (fj[x][0] + fj[x][1] > fj[j][0] + fj[j][1] || (fj[x][0] + fj[x][1] == fj[j][0] + fj[j][1] && fj[x][0] > fj[j][0]))
				  std::copy(fj[j], fj[j] + 4, fj[10]), std::copy(fj[x], fj[x] + 4, fj[j]), std::copy(fj[10], fj[10] + 4, fj[x]);
			  if (++x == j)
				  x = 0, --j;
			  goto px;
	   }
	  jc:if (++x < m)
	  {
			 if (fj[x][0] + fj[x][1] >= fj[x - 1][2] + j)
				 j += fj[x - 1][2];
			 else
				 j = 0;
			 goto jc;
	  }
		 std::cout << (j ? "Yes\n" : "No\n");
		 x = 0, --n;
		 if (n)std::cin >> m;
	   }
	   goto sr;
}
}

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐