首页 > 编程语言 >算法竞赛模板

算法竞赛模板

时间:2022-09-20 22:34:26浏览次数:68  
标签:竞赛 const int long 算法 ch return 模板 define

常用模板

#pragma GCC optimize(3)
#include<bits/stdc++.h>

// =============全局 LL ================
#define int long long
// =============全局 LL ================


#define fuckios ios::sync_with_stdio(false);cin.tie(0);

#define gcd __gcd

#define ms(sth,val) memset(sth,val,sizeof(sth))
#define eb(x) emplace_back(x)
#define pb(x) push_back(x)
#define sz(x) ((int)(x).size())
#define endl '\n'

#ifdef LOCAL
#define debug(a) cout<<#a<<"-->"<<a<<endl;
#endif
#ifndef LOCAL
template<typename T>
void debug(T x){}
#endif


// RP ++ ;

//=========================================

using namespace std;

// small on top
// priority_queue<int,vector<int>,greater<int>> que;
// big on top
// priority_queue<int,vector<int>,less<int>> que;

struct sensei_hash {
    static uint64_t splitmix64(uint64_t x) {
        x += 0x9e3779b97f4a7c15;
        x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9;
        x = (x ^ (x >> 27)) * 0x94d049bb133111eb;
        return x ^ (x >> 31);
    }
    
    size_t operator()(uint64_t x) const {
        static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count();
        return splitmix64(x + FIXED_RANDOM);
    }
};

bool cmp(int x,int y){
    //big to small
    return x>y;
}

int getmid(int s, int t)
{
    // s-> start;
    int ret = s + ((t - s) >> 1);
    return ret;
}


const int32_t inf = 0x3f3f3f3f;
const int64_t inf_ll = 0x3f3f3f3f3f3f3f3f;

using ll = long long;
using ull = unsigned long long;
using pii = pair<int,int> ;

template <typename T>
inline void read(T& x)
{
    x = 0;
    char ch = getchar();
    ll f = 1;
    while (!isdigit(ch)) {
        if (ch == '-')
            f *= -1;
        ch = getchar();
    }
    while (isdigit(ch)) {
        x = x * 10 + ch - 48;
        ch = getchar();
    }
    x *= f;
}
template<typename T, typename ...Arg>
inline void read(T&x, Arg&...args)
{
    read(x);
    read(args...);
}

struct node{
    int x;
    int y;
};

const int N = 1e6 + 10;



inline void sensei()
{
    
}

signed main()
{
#ifndef LOCAL
    fuckios
#endif
    
    
    
    return 0;
}

XCPC

#include <bits/stdc++.h>
//========================
#define int long long
//========================
#define fuckios ios::sync_with_stdio(false);cin.tie(0);
#define gcd __gcd
#define endl '\n'
using namespace std;
const int32_t inf = 0x3f3f3f3f;
const int64_t inf_ll = 0x3f3f3f3f3f3f3f3f;
using ll = long long;

const int N = 1e6 + 10;

inline void sensei()
{
    
}

signed main()
{
    
    return 0;
}

标签:竞赛,const,int,long,算法,ch,return,模板,define
From: https://www.cnblogs.com/BeB0p/p/16712895.html

相关文章

  • CSP 2022 备战 高精度算法
    在考场上,有些题目,你用int只能拿30分开了longlong还是会爆这时候还得靠高精度算法来支持概念:将数字中的每一位存入数组中比如123,可以将它存入一个a[3]的数组中a[0]......
  • 【Coel.学习笔记】随机化算法:模拟退火与爬山法
    简介模拟退火(\(\text{SimulateAnneal}\))和爬山法是随机化算法,二者的原理都在于通过随机生成答案并检查,把答案逐步缩小在一个可行的区间,尽可能地靠近正确答案。在考场......
  • N皇后 【回溯算法】
    51.N皇后-力扣(LeetCode) 核心:1.按照层去选择2.使用String.copyValueOf(char[])将char数组转成StringclassSolution{List<List<String>>res;publ......
  • 3 垃圾收集算法
    目录1垃圾收集三件事2对象存活判定算法2.1引用计数算法2.2可达性分析算法2.2.1不可达对象的后置处理2.3方法区回收判定5垃圾收集算法介绍5.1分代收集理论5.1.1记......
  • 学习-从浏览器缓存淘汰策略和 Vue 的 keep-alive 学习 LRU 算法
    LRU(Leastfrequentlyused:最近最少使用)。算法在缓存写满的时候,会根据所有数据的访问记录,淘汰掉未来被访问几率最低的数据。也就是说该算法认为,最近被访问过的数据,在将来被......
  • MD5 到底是不是加密算法?
    在回答这个问题之前,我们先分别来了解一下两个知识点:什么是MD5算法?什么是加密算法?一、MD5算法MD5即Message-DigestAlgorithm5(信息-摘要算法5),用于确保信息传输完......
  • 全局唯一ID生成器(SnowFlakeId算法JAVA实现)
    importorg.apache.commons.lang3.RandomUtils;importjava.util.Random;/***@Description:全局唯一Id生成器*@Author:yk*@Create:2022-09-2016:55*/p......
  • 通关基本算法 day_04 -- 高精度
    高精度加法大整数如何存储? --每一位存到数组里例如:123456789 第0位存谁?--存9因为如果0位存最后一位,需要乘法的时候,在数组末尾添加数字要比数组开端添加数字方便......
  • 垃圾回收算法(3)-标记清除算法
    前言标记清除算法(Mark-Sweep)是一种非常基础和常见的垃圾收集算法,该算法被J.McCarthy等人在1960年提出并成功的发明并应用于Lisp语言。涉及概念先来了解一下mutator和col......
  • 垃圾回收算法(2)-根搜索算法
    前言相对于引用计数算法而言,根搜索算法不仅同样具备实现简单和执行高效等特点,更重要的是该算法可以有效的解决在引用记数法中一些已经死亡的对象因为相互引用而导致的无法......