本文主要是介绍【结构体】 洛谷U412652 你们多久才能喝完奶茶?(QWQ),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 题意
- 结构体
- 定义结构体变量
- 结构体的调用
- code↓
- 自己出的题目,大家支持一下QWQ
题意
题目链接:你们多久才能喝完奶茶?(QWQ)
-
有 n n n 个数列,每个数列中包含三个数:奶茶容积,喝奶茶的速度,喝奶茶的人的名字
-
其中,保证喝奶茶容积能被奶茶的速度
整除
,保证这个商不重复
-
最后需要求解前 m m m 个数的人的名字
从 2 2 2 我们可以知道,这道题需要使用long long
或者int
,并且可以知道最后不用再排一次序
结构体
结构体的定义:
struct T{E n;
};//其中T代表结构体的变量名,E代表要定义的变量
定义结构体变量
T name;
T a[maxn]={};
结构体的调用
const int maxn=1e5+7;
struct T{int name;int val;
}a[maxn];
//定义上述这么一个结构体
a[i].name; //就可以访问a[i]中的结构体的name的值
a[i].val; //同上
T a;//定义单个变量以用于访问结构体
a.name; //访问a中的结构体name的值
a.val; //同上
code↓
#include <bits/stdc++.h>
using namespace std;
int n,m;
const int maxn=3e5+5;//定义边界值
struct Friend{//定义一个结构体来存储他们int time;//喝奶茶的速度int valu;//奶茶容积string name;//喝奶茶的人的名字int sum;//他们喝完奶茶所需要的时间
}a[maxn];//定义一个数组来进行存储
bool cmp(Friend x,Friend y){return x.sum>y.sum;
}
int main(){ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);//输入优化cin>>n>>m;for(int i=1;i<=n;i++){cin>>a[i].time>>a[i].valu>>a[i].name;//注意先输入的是速度,然后再输入的是容积,最后是名字a[i].sum=(a[i].valu/a[i].time);//求出喝完奶茶所需要的时间}sort(a+1,a+1+n,cmp);//进行排序for(int i=1;i<=m;i++) cout<<a[i].name<<endl;//输出return 0;
}
自己出的题目,大家支持一下QWQ
这篇关于【结构体】 洛谷U412652 你们多久才能喝完奶茶?(QWQ)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!