c晨光


私信TA

用户名:H1320312

访问量:13130

签 名:

大佬们带带我,学渣+oo,哎,我好笨,我为什么这么笨

等  级
排  名 647
经  验 3907
参赛次数 0
文章发表 23
年  龄 10
在职情况 学生
学  校 HBWLXY
专  业 学生

  自我简介:

生活当然需要多姿多彩,不过哪有刷题精彩呢,哇咔咔

解题思路:

输入,排序,计算,输出



这里用到了sort和memset

sort用于排序,加头文件algorithm

没有compare的时候,默认的是从小到大,不需要写第三个参数

memset用于给数组初始化,加头文件string.h


注意事项:
怎样把输入的数据存储到数组中

参考代码:

#include <iostream>
#include <algorithm>
#include <string.h> 
using namespace std;
bool compare (int a,int b)
{return a>b;}
int main(int argc, char *argv[])
{
int t;cin>>t;//t为组数
int n[t],x[t];//数组n用于存每组数中有多少对数 ,x用于存每组的计算值 
memset(x,0,sizeof(x));//对数组x初始化 
for(int i=0;i<t;i++){
cin>>n[i];
int a[n[i]],b[n[i]];
for(int j=0;j<n[i];j++){
cin>>a[j];}
 for(int k=0;k<n[i];k++){
cin>>b[k];}
sort(a,a+n[i]);//从小到大排序 
sort(b,b+n[i],compare);//从大到小排序 
for(int m=0;m<n[i];m++){
x[i]+=a[m]*b[m];}
}
for(int i=0;i<t;i++)
{
cout<<x[i]<<"\n";
} 
return 0;
}

个人觉得自己的空间占用很少,基本上都被释放掉了,特别是数组a和数组b

 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

还能往sort里面加compare,还是自定义的compare,函数名竟然能放那个位置!  这波操作很强
2018-12-09 18:42:53
  • «
  • 1
  • »