与众不同的人,与众不同的题解
2024-06-30 17:41:02
发布于:浙江
13阅读
0回复
0点赞
别人还在用sort的时候,我已经用上冒泡了,牛不牛X
咳咳,不是我不会,只是看天天用sort不好,就用冒泡来写,反正数据不大
对了,别人还在用结构体的时候,我用上了三维char数组.....
哎,我的思路不好讲,就伴随着代码讲吧
#pragma G++ optimize(1)
#pragma G++ optimize(2)
#pragma G++ optimize(3)
#pragma G++ optimize("Ofast")
#pragma G++ optimize("inline")
#pragma G++ optimize("-fgcse")
#pragma G++ optimize("-fgcse-lm")
#pragma G++ optimize("-fipa-sra")
#pragma G++ optimize("-ftree-pre")
#pragma G++ optimize("-ftree-vrp")
#pragma G++ optimize("-fpeephole2")
#pragma G++ optimize("-ffast-math")
#pragma G++ optimize("-fsched-spec")
#pragma G++ optimize("unroll-loops")
#pragma G++ optimize("-falign-jumps")
#pragma G++ optimize("-falign-loops")
#pragma G++ optimize("-falign-labels")
#pragma G++ optimize("-fdevirtualize")
#pragma G++ optimize("-fcaller-saves")
#pragma G++ optimize("-fcrossjumping")
#pragma G++ optimize("-fthread-jumps")
#pragma G++ optimize("-funroll-loops")
#pragma G++ optimize("-fwhole-program")
#pragma G++ optimize("-freorder-blocks")
#pragma G++ optimize("-fschedule-insns")
#pragma G++ optimize("inline-functions")
#pragma G++ optimize("-ftree-tail-merge")
#pragma G++ optimize("-fschedule-insns2")
#pragma G++ optimize("-fstrict-aliasing")
#pragma G++ optimize("-fstrict-overflow")
#pragma G++ optimize("-falign-functions")
#pragma G++ optimize("-fcse-skip-blocks")
#pragma G++ optimize("-fcse-follow-jumps")
#pragma G++ optimize("-fsched-interblock")
#pragma G++ optimize("-fpartial-inlining")
#pragma G++ optimize("no-stack-protector")
#pragma G++ optimize("-freorder-functions")
#pragma G++ optimize("-findirect-inlining")
#pragma G++ optimize("-frerun-cse-after-loop")
#pragma G++ optimize("inline-small-functions")
#pragma G++ optimize("-finline-small-functions")
#pragma G++ optimize("-ftree-switch-conversion")
#pragma G++ optimize("-foptimize-sibling-calls")
#pragma G++ optimize("-fexpensive-optimizations")
#pragma G++ optimize("-funsafe-loop-optimizations")
#pragma G++ optimize("inline-functions-called-once")
#pragma G++ optimize("-fdelete-null-pointer-checks")
//火车头,不推荐用,一个#pragma G++ optimize(3)应该就够了(O3优化)
//对了,某谷好像不欢迎pragma,天天爆编译错误
//之前题解懒得删,要用自取
#include<iostream>
#include<map> //被迫低下我map高贵的头颅
#include<cstring>//换上我cstring崭新的衣裳
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);//这两行看不懂的可以不要
int n;
cin >> n;
char a[n + 1][3][25];//传说中的三维char数组
// struct Node{
// string id,name,score;
// }a[n+1];
//就算我放下了map也不会用你的!struct
for (int i = 1; i <= n; ++i)
cin >> a[i][0] >> a[i][1] >> a[i][2];//输入
for (int i = 1; i <= n; ++i)
for (int j = i + 1; j <= n; ++j)
if (strcmp(a[i][0], a[j][0]) > 0)//比学号
swap(a[i], a[j]);//冒泡都会吧
for (int i = 1; i <= n; ++i)
cout << a[i][2] << '\n';//输出答案就行了
return 0;
}
这个冒泡的效率由于数据小,出奇的高,用1ms和sort的应该也差不多了
谢谢观看,马上走开,不要回来!
全部评论 1
正常人都不会写火车头吧......
2024-06-30 来自 浙江
0
有帮助,赞一个