Skip to content

Instantly share code, notes, and snippets.

@MiSawa
MiSawa / main.cc
Created June 14, 2015 17:35
template for dcj
#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
@MiSawa
MiSawa / bb.cc
Last active August 29, 2015 14:16
// https://codeiq.jp/ace/kawazoe/q1339
#include <iostream>
#include <vector>
long long k_bonacci(const int &k, const int &n){
std::vector<long long> v(k, 0);
long long res = v.back() = 1;
for(int i = 0; i < n; ++i) std::swap(v[i%k] = res * 2 - v[i%k], res);
return res;
}
int main(){
#include <bits/stdc++.h>
using namespace std;
template<typename Res, typename ...Args> struct _memoized{//{{{
function<Res(Args...)> f;
map<tuple<Args...>, Res> memo;
_memoized(function<Res(Args...)> &f) : f(f){}
Res operator()(Args ...args){
const auto &key = make_tuple(args...);
@MiSawa
MiSawa / adj.cc
Last active August 29, 2015 14:11
#include <bits/stdc++.h>
using namespace std;
typedef complex<int> P;
struct adjacent{
P p;
adjacent(const P &p) : p(p){}
template<typename ...Args> adjacent(const Args &...args) : p(args...){}
struct Iter : public forward_iterator_tag {
肩慣らし
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0021
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0012
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0081
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0079
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1100
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0023
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0153
ライブラリを作ろう/アドホックなのもてきとーに出来るようになろう
#include <bits/stdc++.h>
using namespace std;
int m_a_i_n(int, char **);
int main(int argc, char *argv[]){
return m_a_i_n(argc, argv);
}
#define GET3(_1, _2, _3, NAME, ...) NAME
#define main(...) GET3(, ##__VA_ARGS__, m_a_i_n(__VA_ARGS__), m_a_i_n(int _argc, char *_argv[]), m_a_i_n(int _argc, char *_argv[]))
@MiSawa
MiSawa / read.cc
Last active August 29, 2015 14:08
template<typename T> inline void read(T &x){assert(false);}
template<> inline void read<int>(int &x){scanf("%d ",&x);}
template<> inline void read<ll>(ll &x){scanf("%lld ",&x);}
// template<> inline void read<ll>(ll &x){scanf("%I64d ",&x);}
template<typename Arg, typename Arg2, typename ...Args>
inline void read(Arg &x, Arg2 &y, Args& ...z){
read<Arg>(x); read<Arg2, Args...>(y, z...);
}
#!/usr/bin/env ruby
require 'pry'
require 'pry-nav'
require 'simple-random'
$bind = false
Signal.trap(:SIGUSR1) do
$bind = true
end
def bind!
@MiSawa
MiSawa / vec.cc
Last active August 29, 2015 14:05
#include <bits/stdc++.h>
using namespace std;
template<typename T, size_t n>
struct Vec{
typedef vector<typename Vec<T, n-1>::V> V;
static V init(const T &x, initializer_list<size_t>::iterator it){
const size_t s = *it;
return V(s, Vec<T, n-1>::init(x, ++it));
}
@MiSawa
MiSawa / AOJ0275.cc
Created May 22, 2014 19:04
AOJ0275.cc
#include <bits/stdc++.h>
#define rep(i, n) for(int i = 0; i < (n); ++i)
#define sz(v) ((int)(v).size())
#define repsz(i, v) rep(i, sz(v))
#define eb emplace_back
#define pb push_back
#define mt make_tuple
#define mp make_pair
#define cauto const auto &
#define all(v) (v).begin(), (v).end()