/ SeriousOJ /

Record Detail

Wrong Answer


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 772.0 KiB
#2 Accepted 2ms 464.0 KiB
#3 Wrong Answer 2ms 352.0 KiB
#4 Accepted 2ms 396.0 KiB
#5 Accepted 2ms 572.0 KiB
#6 Wrong Answer 2ms 380.0 KiB
#7 Wrong Answer 2ms 380.0 KiB
#8 Accepted 2ms 416.0 KiB
#9 Wrong Answer 1ms 772.0 KiB
#10 Accepted 2ms 540.0 KiB
#11 Accepted 1ms 540.0 KiB
#12 Accepted 2ms 368.0 KiB
#13 Accepted 2ms 516.0 KiB
#14 Accepted 2ms 412.0 KiB
#15 Wrong Answer 2ms 580.0 KiB

Code

#include<bits/stdc++.h>
using namespace std;
const long long M=3e5+10,MOD=1e9+7;
typedef long long ll;
long long bigmod ( long long a, long long p, long long m )
{
    long long res =1;
    long long x = a;

    while ( p )
    {
        if ( p & 1 ) //p is odd
        {
            res = ( res * x )%m;
        }
        x = ( x * x )%m;
        p = p >> 1;
    }

    return res;
}
ll nCrMod(ll n, ll r) {
    if (r > n) return 0;
    if (r == 0 || r == n) return 1;
    ll Res = 1;
    ll rem_sum=0;
    for (ll i = 0; i < r; ++i) {
        rem_sum=(rem_sum + Res)%MOD;
        Res *= (n - i);
        Res %= MOD;
        Res *= bigmod(i + 1, MOD - 2,MOD);
        Res %= MOD;
    }
    return rem_sum;
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int t=1;
    cin>>t;
    while(t--){
        ll n,k;
        cin>>n>>k;
        ll sum=0;
        for(int i=1;i<=n;i++){
            int a;
            cin>>a;
            sum+=a;
        }
        if(k>sum){
            cout<<"0\n";
            continue;
        }
        ll pos_way=bigmod(2,n-sum,MOD)%MOD;
        ll total_pos=bigmod(2,sum,MOD)%MOD;
        ll make_way=nCrMod(sum,k)%MOD;
        ll remainig=(total_pos-make_way+MOD)%MOD;
        ll ans=(pos_way * remainig)%MOD;
        ans=(ans-1LL+MOD)%MOD;
        cout<<ans<<"\n";
    
    }


   
   return 0;
 
}

Information

Submit By
Type
Submission
Problem
P1093 Number of Ways (Easy version)
Language
C++20 (G++ 13.2.0)
Submit At
2024-08-21 13:28:35
Judged At
2024-08-21 13:28:35
Judged By
Score
64
Total Time
2ms
Peak Memory
772.0 KiB