栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1877 Bridge

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1877 Bridge

#include<iostream>#include<cstdlib>#include<cstring>#include<cstdio>#include<cmath>using namespace std;int cmp(const void *a, const void *b){    return *(int*)a > *(int*)b ? 1 : -1;}int a[1002], c[10000];int main(){    int num;    while(scanf("%d", &num) != EOF)    {        int cnt = 0;        int sum = 0;        for(int i = 0; i < num; i++) scanf("%d", &a[i]);        if(num != 1)        { qsort(a, num, sizeof(a[0]), cmp); for(int j = num - 1; j > 1;) {     if(a[j - 1] + a[0] > a[1] * 2)      {         c[cnt++] = a[0];         c[cnt++] = a[1];         sum += a[1];         c[cnt++] = a[0];         sum += a[0];         c[cnt++] = a[j - 1];         c[cnt++] = a[j];         sum += a[j] + a[1];         c[cnt++] = a[1];         j -= 2;     }     else      {         c[cnt++] = a[0];         c[cnt++] = a[j--];         sum += a[j + 1] + a[0];         c[cnt++] = a[0];     } } c[cnt++] = a[0]; c[cnt++] = a[1]; sum += a[1]; printf("%dn",sum); for(int i = 0, j = 0; i < cnt; j++)     if(j % 2)         printf("%dn", c[i++]);     else     {         printf("%d %dn", c[i], c[i + 1]);         i += 2;     }        }        else  printf("%dn%dn", a[0], a[0]);    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/377230.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号