Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* TAHMID RAHMAN
- DAMIAN FOREVER
- MATH LOVER
- NEVER GIVE UP
- */
- #include<bits/stdc++.h>
- using namespace std;
- #define pi acos(-1.0)
- #define fastio ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL)
- #define ll long long
- #define pb push_back
- #define fi first
- #define se second
- #define in insert
- #define mp make_pair
- #define GCD(a,b) __gcd(a,b);
- #define endl "\n"
- #define FRU freopen("out.txt","w",stdout)
- #define FRO freopen("in.txt","r",stdin)
- #define INFLL 9223372036854775807
- #define debug 0
- #define MAXN 100001
- #define ar array
- #define lb lower_bound
- #define ub upper_bound
- const int mxN=2e5;
- const int MOD=1e9+7;
- template<typename ForwardIterator, typename T>
- ForwardIterator first_less_than (ForwardIterator first, ForwardIterator last, T value)
- {auto it = std::lower_bound (first, last, value);
- return (it == first ? last : --it);}
- bool sortbysec(const pair<int,int> &a,const pair<int,int> &b)
- {
- return (a.second < b.second);
- }
- #define debugxx(v) {for(auto x:v){cout<<x.fi<<" "<<x.se<<endl;}cout<<endl;}
- #define debugx(v){for(auto y:v) {cout<<y<<" ";}cout<<endl;}
- bool kth_symbol(ll n,ll k)
- {
- if(n==1)
- {
- return false;
- }
- ll siz=powl(2,n-1);
- bool ok;
- if(k<=(siz/2))
- {
- ok=true;
- }
- else
- {
- ok=false;
- k-=(siz/2);
- }
- ll temp=kth_symbol(n-1,k);
- if(ok)
- return temp;
- else
- return !temp;
- }
- int main()
- {
- ll n,k;
- cin>>n>>k;
- if(kth_symbol(n,k))
- cout<<1<<endl;
- else
- cout<<0<<endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement