社区讨论

为啥是蓝

P1012[NOIP 1998 提高组] 拼数参与者 14已保存回复 57

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
57 条
当前快照
1 份
快照标识符
@mkmbdsqc
此快照首次捕获于
2026/01/20 16:10
4 周前
此快照最后确认于
2026/01/20 16:46
4 周前
查看原帖
首先先声明,我已经知道这道题非常非常的难证明,看了 Register_int的说法,嗯,好难,但是就是想问一个问题
CPP
#include<iostream>
#include<algorithm>
using namespace std;
int cmp(string a,string b){
	return a+b>b+a;
}
int main()
{
	int n=0;
	cin>>n;
	string a[n+10],ans;
	for(int i=0;i<n;i++)
	    cin>>a[i];
	sort(a,a+n,cmp);
	for(int i=0;i<n;i++)
	ans+=a[i];
	cout<<ans<<endl;
	return 0;
}
这样为什么是错的,他不是会把所有组合情况都遍历过去吗,怎么会错, ~好像问这种弱智问题的都被骂得好惨~,但是我真的想弄懂,因为这是考试的题目,老师就是这么做的

回复

57 条回复,欢迎继续交流。

正在加载回复...