제출 #1269063

#제출 시각아이디문제언어결과실행 시간메모리
1269063tryharderforioi100Longest beautiful sequence (IZhO17_subsequence)C11
40 / 100
1353 ms19180 KiB
#include <stdio.h> typedef long long ll; #define max(a, b) (((a) > (b)) ? (a) : (b)) ll pre[2000005]; int main() { ll t=1; //cin>>t; while(t--) { ll n; scanf("%lld",&n); ll a[n],b[n],i; for(i=0;i<n;i++) { scanf("%lld",&a[i]); } for(i=0;i<n;i++) { scanf("%lld",&b[i]); } for(i=0;i<2000000;i++) { pre[i]=__builtin_popcount(i); } ll dp[n],prev[n]; for(i=0;i<n;i++) { dp[i]=1; prev[i]=-1; } ll val=1; for(i=1;i<n;i++) { ll j; for(j=i-1;j>=max(0LL,i-10000);j--) { if(pre[a[i]&a[j]]==b[i]&&dp[i]<dp[j]+1) { dp[i]=dp[j]+1; prev[i]=j; } } val=max(val,dp[i]); } for(i=0;i<n;i++) { if(dp[i]==val) { break; } } ll ans[val]; ll cur=val-1; while(i!=-1) { ans[cur]=i+1; i=prev[i]; cur--; } printf("%lld\n",val); for(i=0;i<val;i++) { printf("%lld ",ans[i]); } printf("\n"); } return 0; } // Author: tryharderforioi100

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

subsequence.c: In function 'main':
subsequence.c:12:17: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   12 |                 scanf("%lld",&n);
      |                 ^~~~~~~~~~~~~~~~
subsequence.c:16:25: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |                         scanf("%lld",&a[i]);
      |                         ^~~~~~~~~~~~~~~~~~~
subsequence.c:20:25: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
   20 |                         scanf("%lld",&b[i]);
      |                         ^~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...