#include <bits/stdc++.h>
#include <time.h>
using namespace std;
#define redir(i, o) { if (i) freopen("a.in", "r", stdin);if (o)freopen("a.out", "w", stdout);}
#define repr(i,a,b) for(int i = a;i < b;++i)
#define DEBUG "L= "<< setw(2)<< __LINE__ << ": "
#ifdef DEBUG
#define print(a) cout<<DEBUG<<#a << ": " <<(a)<<endl
#define prin2(a, b) cout <<DEBUG<<": "<< #a<<": "<< (a)<<" "<<#b<< ": "<<(b)<<endl
#define prinl(a) do{cout<<DEBUG<<endl;int s=min((int)a.size(),16);for(int i=0;i<s;i++)cout<<setw(4)<<i<<" \n"[i==s-1];int num=0;for(auto i:a){cout<<setw(4)<<i<<"\n "[bool(++num%s)];}cout<<endl;}while(0)
#define prinSq(a)
(备忘) 算法竞赛常用宏定义
最新推荐文章于 2024-09-15 11:40:06 发布
这篇博客介绍了算法竞赛中常用的宏定义,包括自定义的print函数、redir输入函数、prinl用于打印列表的函数、prinSq用于打印矩阵的函数,以及makeSq用于生成二维矩阵的函数。通过示例展示了这些函数的使用方法,帮助参赛者提高代码效率和可读性。
摘要由CSDN通过智能技术生成