我变强了!,今天模拟赛我第11!!!,得分200/300,感谢良心数据!;
以下是总结:
t1贪心,排序后第k大乘第k小即可,long long可过;
t2我不会做,得了三十分暴力分,听说有原题,题面是 1/x+1/y=1/(n!) ,求有多少种x,y符合题意;
t3其实是二分图匹配,但我不会,写了个贪心+搜索,还好数据没卡我,得了70分;
于是得分100+30+70=200!;
开心开心。
t1
#include<iostream> #include<cstdio> #include<cctype> #include<algorithm> using namespace std; long long a[1010],b[1010],n; long long ans; inline int read() { int x=0,f=1;char c=getchar(); while(!isdigit(c)){if(c=='-')f=-1;c=getchar();} while(isdigit(c)){x=(x<<3)+(x<<1)+(c^48);c=getchar();} return x*f; } inline int cmp(int x,int y) { return x<y; } inline int cmp1(int x,int y) { return x>y; } int main() { n=read(); for(int i=1;i<=n;i++)a[i]=read(); for(int i=1;i<=n;i++)b[i]=read(); sort(a+1,a+n+1,cmp);sort(b+1,b+n+1,cmp1); for(int i=1;i<=n;i++) ans+=a[i]*b[i]; printf("%lld",ans); return 0; }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/602292.html