제출 #163861

#제출 시각아이디문제언어결과실행 시간메모리
163861MohamedAhmed04Longest beautiful sequence (IZhO17_subsequence)C++14
0 / 100
2 ms380 KiB
//#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math,O3")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")

#include <bits/stdc++.h>
 
using namespace std ;
 
const int MAX = 1e5 + 10 ;
const int Middle = 1 << 10 ;
int arr[MAX] , arr2[MAX] , prv[MAX] , dp[MAX] ;
 
void print(int now)
{
	if(now == 0)
		return ;
	print(prv[now]) ;
	cout<<now<<" " ;
}
 
int main()
{
	ios_base::sync_with_stdio(0) ;
	cin.tie(0) ;
	int n ;
	cin>>n ;
	for(int i = 1 ; i <= n ; ++i)
		cin>>arr[i] ;
	for(int i = 1 ; i <= n ; ++i)
		cin>>arr2[i] ;
	int Max = 0 , en ;
	for(int i = 1 ; i <= n ; ++i)
	{
		dp[i] = 1 ;
		for(int j = 1 ; j < i ; ++j)
		{
			if(dp[j] + 1 <= dp[i])
				continue ;
			if(__builtin_popcount((arr[i] & arr[j])) == arr2[dp[j] + 1])
			{
				dp[i] = dp[j] + 1 ;
				prv[i] = j ;
			}
		}
		if(dp[i] > Max)
			Max = dp[i] , en = i ;
	}
	cout<<Max<<"\n" ;
	print(en) ;
	return 0 ;
}

컴파일 시 표준 에러 (stderr) 메시지

subsequence.cpp: In function 'int main()':
subsequence.cpp:30:16: warning: 'en' may be used uninitialized in this function [-Wmaybe-uninitialized]
  int Max = 0 , en ;
                ^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...