Submission #775156

#TimeUsernameProblemLanguageResultExecution timeMemory
775156vjudge1Rack (eJOI19_rack)C++17
100 / 100
6 ms7928 KiB
#include <bits/stdc++.h> using namespace std; typedef long long lo; #define fi first #define se second #define int long long #define endl "\n" #define pb push_back #define fio() ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL) #define FOR for(int i=1;i<=n;i++) #define mid ((start+end)/2) #define ort ((bas+son)/2) const lo inf = 1000000000; const lo li = 1000005; const lo mod = 1000000007; int n,m,a[li],k,flag,t,pw[li]; int cev; string s; vector<int> v; inline int add(int x,int y){ if(x+y>=mod)return x+y-mod; return x+y; } inline int mul(int x,int y){ return (x%mod)*(y%mod)%mod; } int32_t main(void){ scanf("%lld %lld",&n,&m); pw[0]=1; for(int i=1;i<=n;i++)pw[i]=add(pw[i-1],pw[i-1]); cev=1; for(int i=n-1;i>=0;i--){ if(m%2==0)cev=add(cev,pw[i]); m=(m+1)/2; } printf("%lld\n",cev); return 0; }

Compilation message (stderr)

rack.cpp: In function 'int32_t main()':
rack.cpp:36:7: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   36 |  scanf("%lld %lld",&n,&m);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...