C++编程竞赛常用技巧总结-001

C++编程竞赛常用技巧总结

——by:杨与S8/CODE:549

注意:以下所有语法均建立在头文件有#include<bits/stdc++.h>的前提下

2023/11/1

1.头文件改用万能头文件,避免出现写完忘记加头文件的尴尬

#include <bits/stdc++.h>

2.使用using定义缩写可以提升写代码的速度,尤其是需要复用的代码

using ll = long long;	//ll是long long的缩写

3.数组需要用10的n次方定义时,用1en代替,最好再加个3防止数组越界

const int N = 1e4 + 3;	//1e4表示10的4次方

4.使用下面三行代码可以加快cincout的速度

ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);

5.在有n个元素的数组a中,可以用下面的语法快速获取最大值或者最小值

cout << *max_element(a, a + n) << "\n";	//输出最大值
cout << *min_element(a, a + n) << "\n";	//输出最小值

6.使用下面的语法可以保留x的i位小数

fixed << setprecision(i) << x;

//例如下面这个:输出平均数并保留三位小数
cout << fixed << setprecision(3) << sum * 1.0 / n;
//注意要乘以1.0,否则会被当成整数相除

7.maxmin函数:取某几个元素中的最大/最小值

//假设a>b>c
cout << max(a, b, c) << "\n";	//输出结果为a
cout << min(a, b, c) << "\n";	//输出结果为c

//下面是实际应用:数组为a[n]
for (int i = 1; i < n; i++)	// 更新最大值和最小值
{
    mx = max(mx, a[i]);	
    //将目前的最大值不断与数组中的下一个元素比较,有大取大
    mi = min(mi, a[i]);
    //同上,有小取小
}// 循环结束后,mx和mi分别存储了最大值和最小值
posted @ 2023-11-01 13:00  杨与S8  阅读(19)  评论(0编辑  收藏  举报