蓝桥杯备赛 | 洛谷做题打卡day3

蓝桥杯备赛 | 洛谷做题打卡day3

sort函数真的很厉害!

文章目录

  • 蓝桥杯备赛 | 洛谷做题打卡day3
    • sort函数真的很厉害!
        • 【深基9.例1】选举学生会
        • 题目描述
        • 输入格式
        • 输出格式
        • 样例 #1
          • 样例输入 #1
        • 样例输出 #1
    • 我的一些话

【深基9.例1】选举学生会
题目描述

学校正在选举学生会成员,有 n n n n ≤ 999 n\le 999 n999)名候选人,每名候选人编号分别从 1 1 1 n n n,现在收集到了 m m m m ≤ 2000000 m \le 2000000 m2000000)张选票,每张选票都写了一个候选人编号。现在想把这些堆积如山的选票按照投票数字从小到大排序。

输入格式

输入 n n n m m m 以及 m m m 个选票上的数字。

输出格式

求出排序后的选票编号。

样例 #1
样例输入 #1
5 10
2 5 2 2 5 2 2 2 1 2
样例输出 #1
1 2 2 2 2 2 2 2 5 5

蓝桥杯备赛 | 洛谷做题打卡day3_第1张图片

学会利用新知,自己多试试并尝试使用sort函数对数组快排,debug,以下是我的代码 ~

#include
using namespace std;
char s[110][110];
int t = 0;

void find(int a, int b)
{
	if (s[a][b] == '*') t++;
}

int main()
{
	int n, m, cnt = 0;
	cin >> n >> m;
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
		{
			cin >> s[i][j];
		}
	}
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < m; j++)
		{
			if (s[i][j] == '*') cout << '*';
			if (s[i][j] == '?')
			{
				for (int p = i - 1; p <= i + 1; p++)
				{
					for (int q = j - 1; q <= j + 1; q++) find(p, q);
				}
				cout << t;
				t = 0;
			}
		}
		cout << endl;
	}
	return 0;
}

今天还复习了一下冒泡排序,总的来说原理并不难,话不多说上代码 ~

#include
using namespace std;
#define N 5 //定义了符号常量N,大家如果自己需要更改排序的数组数量的话可以直接在这里更改哦
int main()
{
	int a[N];
	cout << "请输入要排序的数组:" << endl;
	for (int i = 0; i < N; i++) cin >> a[i];
	cout << "排序前的数组为:" << endl;
	for (int i = 0; i < N; i++) cout << a[i] << ' ';
	cout << endl;
	for (int i = 0; i < N - 1; i++)
	{
		for (int j = 0; j< N-i-1; j++)//非常简洁的代码,双层嵌套循环以便进行多趟冒泡排序
		{
			if (a[j] > a[j + 1])
			{
				int t = a[j];
				a[j] = a[j + 1];
				a[j + 1] = t;
			}
		}
	}
	cout << "排序后的数组为:" << endl;
	for (int i = 0; i < N; i++) cout << a[i] << ' ';
	cout << endl;
	return 0;
}

我的一些话

  • 关于冒泡排序:原本因为自己会忘的差不多了qaq,结果一上手原理还是蛮好懂的嘻嘻,定义了符号常量N,大家如果自己需要更改排序的数组数量的话可以直接在N后面更改哦(注释中有写)

  • 总结来说思路很重要,多想想,多在草稿纸上画画,用测试数据多调试,debug后成功编译并运行出正确结果真的会感到很幸福!

  • 关于之前蓝桥杯备赛的路线和基本方法、要掌握的知识,之前的博文我都有写,欢迎大家翻阅自取

  • 不管什么都要坚持吧,三天打鱼两天晒网无法形成肌肉记忆和做题思维,该思考的时候一定不要懈怠,今天就说这么多啦,欢迎评论留言,一起成长:)

你可能感兴趣的:(蓝桥杯备赛,C++知识,新手帖,蓝桥杯,c++,笔记,学习)