有四个超时怎么办呀,啊,我好菜啊,求大佬救一下可怜的萌新吧
查看原帖
有四个超时怎么办呀,啊,我好菜啊,求大佬救一下可怜的萌新吧
335860
化身灵蝶子楼主2020/9/12 22:33
#include<iostream>
#include<math.h>
#include<string>
using namespace std;
int I = 0, J = 0,K;
int main()
{
	int n, m;
	cin >> n >> m;
	K = n;
	int* p1 = new int[n];
	string* p2 = new string[n];
	int* *p3 = new int*[m];
	for (int i = 0; i < m; i++)	
		p3[i] =new int[2];
	for (int i =n-1; i>=0; i--)
	{
		cin >> p1[i]>>p2[i];
	}
	for (int i = 0; i < m; i++)
	{
		for (int j = 0; j < 2; j++)
		{
			cin >> p3[i][j];
		}
	}
	I = n - 1;
	J =n-1;
	void TheSorting(int* p1, string * p2, int** p3, int much);
	for (int i = 0; i < m; i++)
	{
		TheSorting(p1, p2, p3, i);
	}
	cout << p2[J];
	delete[]p1, p2,p3;
	return 0;
}
void TheSorting(int *p1,string *p2,int **p3,int much)
{
	if ((p1[I] == 0 && p3[much][0] == 0) || (p1[I] == 1 && p3[much][0] == 1))
	{
		if (J + p3[much][1] >= K)
		{
			for (int i = 0; i < p3[much][1]; i++)
			{
				J++;
				if (J == K)
					J = 0;
				
			}
		}
		else
			J =J+p3[much][1];
	}
	else
	{
		if (J - p3[much][1] >= 0)
			J =J-p3[much][1];
		else
		{
			for (int i = 0; i < p3[much][1]; i++)
			{
				J--;
				if (J < 0)
					J = K-1;
			}
		}
	}
	I = J; 
}
2020/9/12 22:33
加载中...