My stats at the moment:
Submissions: 1701 Problems tried: 322 Problems solved: 300 First submission: 2009-11-17 Last submission: 2011-10-21
And details on the last submission: Problem number: 11850 Rank of solution: 225 Submission number: 9395891 Date: 2011-10-21 Time: 20:54:39 Runtime: 0.008
Method:
1. Take the input and sort the array.
2. Check if between two consecutive stations the distance is > 200. If so IMPOSSIBLE
3. At last she has to go to the destination and come back to the last station, so check if (1422-[last station])X2 > 200.
#include <stdio.h>
#include <stdlib.h>
int cmp(const void *a, const void *b)
{
return (*(int*)a - *(int*)b);
}
int miles[4000];
int main()
{
int n, i, set;
while (scanf("%d",&n) && n)
{
for (i=0 ; i<n ; i++)
scanf("%d",&miles[i]);
qsort(miles,n,sizeof(int),cmp);
set=1;
for (i=1 ; i<n && set ; i++)
{
if (miles[i]-miles[i-1]>200) set=0;
}
if (2*(1422-miles[n-1])>200) set=0;
if (set) printf("POSSIBLE\n");
else printf("IMPOSSIBLE\n");
}
return 0;
}
No comments:
Post a Comment
Post your comment here. If you want to say something about programming problems, scripts, software etc, please try to be as descriptive as possible.