I hereby claim:
- I am misawa on github.
- I am misawa (https://keybase.io/misawa) on keybase.
- I have a public key whose fingerprint is D5A3 7798 FFE8 F754 5B83 C133 BFFF 4B86 A074 F3D0
To claim this, I am signing this object:
#!/usr/bin/env rust-script | |
use std::{ | |
cmp::{Ord, Ordering}, | |
collections::BinaryHeap, | |
ops::{Deref, DerefMut}, | |
}; | |
pub trait Priority<T: ?Sized> { | |
fn eq(lhs: &T, rhs: &T) -> bool { |
#!/usr/bin/env rust-script | |
//! ```cargo | |
//! [dependencies] | |
//! clap = { version = "4.1.8", features = ["derive"] } | |
//! eyre = "0.6.8" | |
//! path-absolutize = "3.0.14" | |
//! serde = { version = "1.0.156", features = ["derive"] } | |
//! serde_json = "1.0.95" | |
//! | |
//! paths = { git = "https://github.com/rust-lang/rust-analyzer.git", tag = "2023-04-10" } |
I hereby claim:
To claim this, I am signing this object:
use std::sync::mpsc::{sync_channel, SyncSender}; | |
use anyhow::{anyhow, Result}; | |
#[derive(Clone, Debug)] | |
enum Index { | |
Array(usize), | |
Map(String), | |
} | |
type Path = Vec<Index>; |
#include <algorithm> | |
#include <cassert> | |
#include <limits> | |
#include <queue> | |
#include <vector> | |
#include <vector> | |
namespace atcoder { |
#include <iostream> | |
#include <vector> | |
#include <tuple> | |
#include <array> | |
// s u - u - u - u | |
// | > a < X X X > c - t | |
// b v - v - v - v | |
#include <iostream> | |
#include <type_traits> | |
// param > 0 => use param as the modulo | |
// param <= 0 => you can set the modulo with ModInt<param>::set_modulo(...) in runtime. | |
// Of course, those runtime modulo will be distinguished if the param was different. | |
template<int param> | |
class ModInt{//{{{ | |
using Z = int; | |
using N = unsigned int; |
using ll = long long; | |
// https://gist.github.com/MiSawa/2818cf0bfdb27d42c429f2adb7ee9bc0 | |
// バグってても責任とりません >_< | |
// 下に行くほど最適化が減る代わりに記述が楽になります | |
struct ICPCAugRelabel {//{{{ | |
using Flow = int64_t; | |
constexpr static Flow INF = numeric_limits<Flow>::max(); | |
struct E{ | |
size_t t, rev; |
#include <bits/stdc++.h> | |
#define all(x) begin(x),end(x) | |
#define rall(x) (x).rbegin(),(x).rend() | |
#define REP(i,b,n) for(int i=(int)(b);i<(int)(n);++i) | |
#define rep(i,n) REP(i,0,n) | |
#define repsz(i,v) rep(i,(v).size()) | |
#define aur auto& | |
#define bit(n) (1LL<<(n)) | |
#define eb emplace_back | |
#define mt make_tuple |
#include <bits/stdc++.h> | |
using namespace std; | |
namespace KeyWordArguments{//{{{ | |
template<typename T> | |
class KeyWord {//{{{ | |
using type = T; | |
KeyWord(const size_t &id, const T &val) : id(id), val(val) {} | |
static inline size_t get_id(){ static size_t count = 0; return count++; } | |
public: |