제출 #1182491

#제출 시각아이디문제언어결과실행 시간메모리
1182491_unknown_2010Binaria (CCO23_day1problem1)C++20
6 / 25
0 ms328 KiB
#ifndef LOCAL #pragma GCC optimize ("Ofast") #pragma GCC optimize ("unroll-loops") #endif #include <bits/stdc++.h> // #include <ext/pb_ds/assoc_container.hpp> // #include <ext/pb_ds/tree_policy.hpp> using namespace std; // using namespace __gnu_pbds; // template<typename T> using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>; // template<typename T> using indexed_multiset = tree<T, null_type, less_equal<T>, rb_tree_tag, tree_order_statistics_node_update>; #define int int64_t #define vi vector // #define ss second // #define ff first // #define TESTCASES // #define all(x) (x).begin(), (x).end() const int mod = 1E9+7; const int MAXN=200000; const int inf=1e18; void solution(){ int n,k; cin >> n >> k; vi<int> a(n-k+1); int sum=0; for(auto &x:a)cin >> x; for(int i=0; i<(1<<n); i++){ bool ok=1; int c=0; vi<int> b(n+1); for(int j=0; j<n; j++){ if(((1<<j)&i))c+=1,b[j]+=1; if(j+1<k)continue; if(j>=k)c-=b[j-k]; if(a[j-k+1]!=c){ ok=0; break; } } sum+=ok; } cout << sum; } int32_t main(){ clock_t tStart = clock(); #ifdef khos freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif std::ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int q = 1; // #ifdef TESTCASES // cin >> q; // #endif while(q--) { solution(); cout << '\n'; } cerr<<fixed<<setprecision(3)<<"\nTime Taken: "<<(double)(clock()- tStart)/CLOCKS_PER_SEC<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...