V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  qwsqwa  ›  全部回复第 2 页 / 共 2 页
回复总数  26
1  2  
@choury

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
using namespace std;

int n;
int a[111];

long long get(const int &a)
{
long long ret = 1;
while(ret < a){
ret *= 10;
}
return ret;
}

bool cmp(const int &a, const int &b)
{
return (long long)a*get(b)+b > (long long)b*get(a)+a;
}

void solve()
{
for(int i = 0; i < n; i++){
scanf("%d",&a[i]);
}
sort(a,a+n,cmp);
for(int i = 0;i < n; i++){
printf("%d",a[i]);
}
puts("");
}

int main()
{
#ifdef ARTHUR_YANG
freopen("in.txt", "r", stdin);
#endif // ARTHUR_YANG
while(~scanf("%d",&n)) {
solve();
}
return 0;
}

搞得不好也不用这么打击人吧……
搞过ACM的表示第四题重写一个比较函数就好。
虽然不会JS,但从效果上感觉快排写的好像有点问题。
每次分治时在边缘都会有一些数据没分到正确的位置,我猜应该是边界没有处理好,边界写小了。
好像在快排完后又调用了其他排序算法,所以最终结果是对的。
2015-03-03 13:03:10 +08:00
回复了 qwsqwa 创建的主题 设计 TeXstudio 如何取消全屏
@Eleutherios 谢谢,我用别的编辑器试了试,好像是快捷键失效了,和别的冲突了。
2015-02-16 04:54:05 +08:00
回复了 rfo 创建的主题 2015 明天我要结婚了。
恭喜!祝福!
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   959 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 22ms · UTC 21:21 · PVG 05:21 · LAX 14:21 · JFK 17:21
Developed with CodeLauncher
♥ Do have faith in what you're doing.