求助,明明输出一样,却过不了
查看原帖
求助,明明输出一样,却过不了
649652
hyz_zzh楼主2022/4/21 18:43

下载了数据测试,看起来好像一样,但过不了,还请大佬帮忙看一下。

#include <bits/stdc++.h>
using namespace std;
int n,len,id;
string s[21],t;

void init()
{
	cin>>n;
	getchar();
	for (int i=1;i<=n;i++)
	{
		getline(cin,s[i]);
	}
}

bool compare(string x,string y,short l)
{
	for (int i=0;i<=l;i++)
	{
		if (x[i]>y[i])
		{
			return true;
		}
		else if (x[i]<y[i])
		{
			return false;
		}
	}
}

void count()
{
	t=s[1];
	id=1;
	for (int i=2;i<=n;i++)
	{
		int lens=s[i].size();
		if (lens>len)
		{
			len=lens;
			id=i;
			t=s[i];
		}
		else if (lens==len)
		{
			if (compare(s[i],t,len)==true)
			{
				len=lens;
				id=i;
				t=s[i];
			}
		}
	}
}

int main()
{
	init();
	count();
	cout<<id<<endl;
	for (int i=0;i<=len;i++)
	{
		if (s[id][i]!='\0')
		{
			int tmp=int(s[id][i])-48;
			cout<<tmp;
		}
	}
	return 0;
} 
2022/4/21 18:43
加载中...