c/c++语言开发共享day 15

我变强了!,今天模拟赛我第11!!!,得分200/300,感谢良心数据!; 以下是总结: T1贪心,排序后第K大乘第K小即可,long long可过; T2我不会做,得了三十分暴力分,听说有原题,题面是 1/x+1/y=1/(n!) ,求有多少种x,y符合题意; T3其实是二分图匹配,但我不会,写了 …


我变强了!,今天模拟赛我第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

(0)
上一篇 2021年5月11日
下一篇 2021年5月11日

精彩推荐