Submission #78567

# Submission time Handle Problem Language Result Execution time Memory
78567 2018-10-06T12:17:53 Z hamzqq9 Sailing Race (CEOI12_race) C++14
5 / 100
1470 ms 9696 KB
#include<bits/stdc++.h>
#define st first
#define nd second
#define pb push_back
#define ppb pop_back
#define umax(x,y) x=max(x,y)
#define umin(x,y) x=min(x,y)
#define ll long long
#define ii pair<int,int>
#define iii pair<ii,int>
#define iiii pair<ii,ii>
#define sz(x) ((int) x.size())
#define orta ((bas+son)>>1)
#define all(x) x.begin(),x.end()
#define dbgs(x) cerr<<(#x)<<" --> "<<(x)<<" "
#define dbg(x) cerr<<(#x)<<" --> "<<(x)<<endl;getchar()
#define pw(x) (1<<(x))
#define inf 2000000000
#define MOD 1000000007
#define N 505
#define MAX 5000000
#define LOG 100
#define KOK 333
using namespace std;

int n,k,x;
int ar[2*N],a[N][N],dp[2*N][2*N][2];

void f_1() {

}

void f_0() {

	int ans=-1,tut;

	/*for(int i=1;i<=2*n;i++,puts("")) {

		for(int j=1;j<=2*n;j++) {

			printf("%d ",dp[i][j]);

		}

	}*/

	for(int i=1;i<=n;i++) {

		if(dp[i][i+n-1][0]>ans) {

			ans=dp[i][i+n-1][0];
			tut=i;

		}

	}

	printf("%d\n%d\n",ans,tut);

}

void do_1() {

}

void do_0() {

	for(int len=2;len<=n;len++) {

		for(int fr=1;fr>-1;fr--) {

			for(int i=1;i<=2*n;i++) {

				int beg=i-len+1;
				int en=i+len-1;

				if(beg>=1) {

					for(int j=beg+fr;j<i;j++) {

						if(a[ar[i]][ar[j]]) umax(dp[i][beg][fr],max(dp[j][beg][0],dp[j][i][1])+1);

					}

				}

				if(en<=2*n) {

					for(int j=i+1;j<=en-fr;j++) {

						if(a[ar[i]][ar[j]]) umax(dp[i][en][fr],max(dp[j][en][0],dp[j][i][1])+1);

					}

				}

			}
		}

	}

}

int main() {
	
	//freopen("input.txt","r",stdin);

	scanf("%d %d",&n,&k);

	for(int i=1;i<=n;i++) {

		do {

			scanf("%d",&x);

			if(x==0) break ;

			a[i][x]=1;

		} while(1);

	}

	for(int i=1;i<=n;i++) ar[i]=ar[i+n]=i;

	do_0();
	do_1();

	if(k==0) f_0();
	else f_1();

}

Compilation message

race.cpp: In function 'int main()':
race.cpp:108:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d",&n,&k);
  ~~~~~^~~~~~~~~~~~~~~
race.cpp:114:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&x);
    ~~~~~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Incorrect 3 ms 628 KB Unexpected end of file - int32 expected
3 Incorrect 3 ms 704 KB Unexpected end of file - int32 expected
4 Incorrect 3 ms 908 KB Unexpected end of file - int32 expected
5 Incorrect 4 ms 1080 KB Output isn't correct
6 Incorrect 6 ms 1228 KB Unexpected end of file - int32 expected
7 Incorrect 9 ms 1516 KB Output isn't correct
8 Incorrect 8 ms 1532 KB Unexpected end of file - int32 expected
9 Incorrect 16 ms 1660 KB Output isn't correct
10 Incorrect 14 ms 1788 KB Output isn't correct
11 Incorrect 24 ms 1792 KB Output isn't correct
12 Incorrect 101 ms 3452 KB Unexpected end of file - int32 expected
13 Incorrect 243 ms 5696 KB Unexpected end of file - int32 expected
14 Incorrect 478 ms 7676 KB Output isn't correct
15 Incorrect 1184 ms 9524 KB Unexpected end of file - int32 expected
16 Incorrect 1332 ms 9676 KB Unexpected end of file - int32 expected
17 Incorrect 1161 ms 9676 KB Unexpected end of file - int32 expected
18 Incorrect 827 ms 9696 KB Output isn't correct
19 Incorrect 1429 ms 9696 KB Unexpected end of file - int32 expected
20 Incorrect 1470 ms 9696 KB Unexpected end of file - int32 expected