Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma once
- #include"base/dependencies/index.hpp"
- #include"integers.hpp"
- // Entire container ranges.
- #define ALL(c)begin(c),end(c)
- #define RALL(c)rbegin(c),rend(c)
- // Common iterations.
- #define FORE(e,c)for(auto const&e:(c))
- #define FORIT(it,c)for(auto it=begin(c);it!=end(c);++it)
- #define FORLR(i,l,r)for(s32 i=S32(l);i<S32(r);++i)
- #define FORN(i,n)FORLR(i,0,n)
- #define RFORIT(it,c)for(auto it=rbegin(c);it!=rend(c);++it)
- #define RFORLR(i,l,r)for(s32 i=S32(r)-1;i>=S32(l);--i)
- #define RFORN(i,n)RFORLR(i,0,n)
- // Negated control flows.
- #define UNLESS(p)if(!(p))
- #define UNTIL(p)while(!(p))
- // Test cases input and iteration.
- #define CASES s32 _t_;cin>>_t_;while(_t_--)
- // Signed 32-bit size.
- #define SIZE(c)(S32(size(c)))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement