This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
using namespace chrono;
// using namespace atcoder
#define YES cout << "YES"
#define NO cout << "NO"
#define fd fixed
#define ll long long
#define ull unsigned long long
#define ui unsigned int
#define dbl double
#define ld long double
#define f first
#define s second
#define pii pair<int , int>
#define pll pair<ll , ll>
#define pil pair<int , ll>
#define pli pair<ll , int>
#define psi pair<string , int>
#define pci pair<char , int>
#define pic pair<int , char>
#define pis pair<int , string>
#define psl pair<string , ll>
#define pcl pair<char , ll>
#define plc pair<ll , char>
#define pls pair<ll , string>
#define pb push_back
#define eb emplace_back
#define mp make_pair
#define ins insert
#define END return 0
#define speed ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0)
#define all(x) (x).begin() , (x).end()
#define oo 1e9
/*
int gcd(int number1 , int number2){
if(number2 == 0){
return number1;
}
return gcd(number2 , number1 % number2);
}
int lcm(int number1 , int number2){
return number1 / gcd(number1 , number2) * number2;
}
ll fact(int number){
ll product = 1;
for(int i=2 ; i<=number ; i++){
product *= i;
}
return product;
}
*/
#define int ll
void solve(){
int n , k;
cin >> n >> k;
vector<int> A(n+5);
for(int i=1 ; i<=n ; i++){
cin >> A[i];
}
for(int i=1 ; i<=n ; i++){
for(int j=1 ; j<=n-i+1 ; j++){
vector<int> ededler;
for(int k=j ; k<=j+i-1 ; k++){
ededler.pb(A[k]);
}
int ind = 0 , say = 1 , say1 = 0;
for(int z=j+i ; z<=n ; z++){
if(A[z] == ededler[ind]){
say1++;
if(say1 == ededler.size()){
say++;
say1 = 0;
}
}
else{
break;
}
ind++;
if(ind == ededler.size()){
ind = 0;
}
}
if(say >= k){
cout << ededler.size() << '\n';
for(int i=0 ; i<ededler.size() ; i++){
cout << ededler[i] << " ";
}
return;
}
}
}
cout << -1;
}
signed main(){
speed;
int t = 1;
//cin >> t;
while(t--){
solve();
}
END;
}
Compilation message (stderr)
Main.cpp: In function 'void solve()':
Main.cpp:95:24: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
95 | if(say1 == ededler.size()){
| ~~~~~^~~~~~~~~~~~~~~~~
Main.cpp:104:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
104 | if(ind == ededler.size()){
| ~~~~^~~~~~~~~~~~~~~~~
Main.cpp:110:28: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
110 | for(int i=0 ; i<ededler.size() ; i++){
| ~^~~~~~~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |