首页 > 其他 > 详细

“科大讯飞杯”第18届上海大学程序设计联赛春季赛暨高校网络友谊赛

时间:2020-04-23 09:42:07      阅读:91      评论:0      收藏:0      [点我收藏+]
A 组队比赛

给定四个数 a,b,c,d,a,b,c,d, 要求把这四个数分成两组,并最小化 两组数的和 的 差的绝对值

#include<iostream>
#include<cmath>
using namespace std;
int b[5];
int main()
{
    int a[5];int min1,min2=16810000,sum;
    for(int i=1;i<=4;i++){
        cin>>a[i];
        b[i]=b[i-1]+a[i];
    }
    for(int i=1;i<=4;i++){
        for(int j=i+1;j<=4;j++){
         sum=a[i];
         sum+=a[j];
       min1=abs(sum-(b[4]-sum));
          min2=min(min1,min2);
       sum-=a[j];
         }
    }
   cout<<min2<<endl;
 
}

报送日期不一致的,则日期较近的在上,日期较久远的在下;报送日期一致体温不一致的,则体温高的在上,体温低的在下;报送日期和体温都一致的,则学号小的在上,学号大的在下。

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
typedef struct bao{
int a;
double c;
int b;
}s;
bool cmp(s m,s v){
if(m.a!=v.a)return m.a>v.a;
if(m.c!=v.c)return m.c>v.c;
return m.b<v.b;
}
int main()
{
    s w[107];
    int n;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>w[i].a>>w[i].b>>w[i].c;
        if(w[i].c<38.0){
            i--;
            n--;}
    }
 sort(w,w+n,cmp);
 cout<<n<<endl;
 for(int i=0;i<n;i++){
cout<<w[i].a<<" "<<w[i].b<<" ";
 printf("%.1f\n",w[i].c);}
}
C 最长非公共子序列

如果两个字符串相等则是-1,否则为最长字符串的长度

//想复杂了,开始

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s,c;
    cin>>s>>c;
    if(s==c)cout<<-1;
    else
    {
        int l=s.length(),flag=0;
        int ll=c.length();
 
        if(l==ll)
        {
            int num=0;
            for(int i=0;i<ll;i++)
            {
                
                if(c[i]==s[num])
                {
                    num++;
                if(num==l)
                {
                    flag=1;
                    break;
                }
            }
        }
        if(flag==1)
         cout<<"-1";
        else cout<<max(l,ll);
    }}
E 美味的序列

给你一个长为 nn 的数列 a_1a1? a_2a2? a_3a3? .....a_nan? , 一个人现在要从两段吃这个序列 ,, 必须吃完 ..

每次得到的收益为 吃到的数的值.. 但是每次吃完之后整个数列的所有数会减去 1.1.

要求最大化最后的总收益..

#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll sum=0,a,n;
int main()
{ cin>>n;
for(int i=1;i<=n;i++){
   scanf("%lld",&a);
    sum+=a;
}
    cout<<sum-n*(n-1)/2<<endl;
    }
//开始wa了,后来我无语了,不过居然是n类型小了???

“科大讯飞杯”第18届上海大学程序设计联赛春季赛暨高校网络友谊赛

原文:https://www.cnblogs.com/1324a/p/12758494.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!