Canis

Canis : priority_queue
3 年,8 月前

1. 概念 : 什么是优先队列呢 ? 在优先队列中,元素被赋予优先级,当访问元素时,具有最高级优先级的元素先被访问。即优先队列具有最高级先出的行为特征。它可以说是队列和排序的完美结合体,不仅可以存储数据,还可以将这些数据按照我们设定的规则进行排序。   2. 定义 : 优先队列在头文件# include < queue > 中;其声明格式为: priority_queue < int > ans ; //声明一个名为ans的整形的优先队列 3. 支持的操作 : q . empty ...查看全文
Canis : 加速cin, 快读快写(只用于整数),编译优化
3 年,8 月前

在main的前两行加上 ios::sync_with_stdio(false); cin.tie(0); cin慢是有原因的,其实默认的时候,cin与stdin总是保持同步的,也就是说这两种方法可以混用,而不必担心文件指针混乱,同时cout和stdout也一样,两者混用不会输出顺序错乱。正因为这个兼容性的特性,导致cin有许多额外的开销,如何禁用这个特性呢?只需一个语句std::ios::sync_with_stdio(false);,这样就可以取消cin于stdin的同步了。 优化 ...查看全文