You are not logged in. Please login at www.codechef.com to post your questions!

×

CAKEWALK

None

# PROBLEM:

Given an unsorted array of unique elements, find the position of a specified elements in array’s sorted form.

# QUICK EXPLANATION:

Count the number of elements in an unsorted array which are smaller than the given element.

# EXPLANATION:

Since the length of all songs is unique, if we count the number of songs which have length less than the length of “Uncle Johny”, we know its position in sorted array.

Constraint on the value of N in this problem is very low so many contestants sorted the array and then did binary search for the length of “Uncle Johny” song in the sorted array. This approach also passes well within time limit.

# AUTHOR'S AND TESTER'S SOLUTIONS:

Author's solution will be uploaded soon
Tester's solution can be found here and here

This question is marked "community wiki".

asked 11 Nov '13, 15:03

616913
accept rate: 0%

 0 Links to author's and tester's solutions not working. answered 11 Nov '13, 22:08 4.2k●5●23●64 accept rate: 15%
 0 You can also use two pointers at both ends to get a faster time a---is the array of numbers x--- is the number we are trying to find its position after sorting i=0;j=n-1 while(i<=j) if a[i]
 0 I can't figure out why doesn't it work? https://ideone.com/ftTHzI Seems correct to me. PS: Nicely formatted, readable code. answered 02 Jun '16, 10:19 2★jarpit96 1 accept rate: 0%

Why is this code giving wrong answer ?

# include<cstdio>

using namespace std;

int main() {

int T,N,K,i,song;
long long A[102];
scanf("%d",&T);
while(T--)
{
scanf("%d",&N);
for(i=1;i<=N;i++) scanf("%lld",&A[i]);
scanf("%d",&K);
song=0;
for(i=1;i<=N;i++)
{
if (A[i]<A[K]) song++;
}
printf("%d\n",song);
}
return 0;


}

This answer is marked "community wiki".

answered 27 Jul '16, 14:09

1
accept rate: 0%

 0 Why this code returns wrong answer?? #include using namespace std; int main() { int T,N,a[100],K,fav,temp=0; cin>>T; for(int k=0;k>N; for(int i=0;i>a[i]; } cin>>K; fav=a[K-1]; for(int j=0;ja[k+1]){ temp=a[k]; a[k]=a[k+1]; a[k+1]=temp; } } } for(int m=0;m
 0 The majority of students think that doing their homework is boring. They do everything accept their homework. If you are one of such students, struggling with the study overload and burden of assignment. Dissertation writing service answered 26 Aug '16, 11:22 0★adam0702 1 accept rate: 0%
 0 Answer is hidden as author is suspended. Click here to view. answered 04 Feb '17, 11:56 (suspended) accept rate: 0%
 0 The Class Clown Easily identifiable, it is the student who is bored and tries to boycott the class by interrupting constantly with questions away from the topic that develops at that moment. Your goal is to get the attention of the class with your comments and jokes so that everyone laughs. He does not allow his classmates to get involved with the lessons or that someone actively participates in the class as he talks to the students coming to his site. Uk Dissertation Writing Services answered 23 Feb '17, 14:21 0★aanish -1 accept rate: 0%

# include <stdio.h>

int main(void) { int t,s,p[100],p1,i,j,k,b,u1,lst,fst,mid; scanf("%d",&t); for(i=0;i<t;i++) { scanf("%d",&s); for(j=0;j<s;j++) { scanf("%d",&p[j]); } scanf("%d",&u1); p1=p[u1-1];

      for(k=0;k<s-1;k++)
{
for(j=0;j<=s-k-1;j++)
{
if(p[j]>p[j+1])
{
b=p[j];
p[j]=p[j+1];
p[j+1]=b;
}
}
}
for(j=0;j<s;j++)
{
//  printf("%d\t",p[j]);    //sorted
}
//  printf("\n");
fst=0;
lst=s-1;
mid=(fst+lst)/2;
// printf("%d %d %d %d\n",fst,lst,mid,p1);
while(fst<=lst)
{
if(p[mid]<p1)
fst=mid+1;
else if(p[mid]==p1)
{
printf("%d\n",(mid+1));
break;
}
else
lst=mid-1;
mid=(fst+lst)/2;
}

}
return 0;


}

why the answer is coming wrong although i am getting correct answer in online ide

answered 13 Jun '17, 00:10

1
accept rate: 0%

 toggle preview community wiki:
Preview

### Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

Markdown Basics

• *italic* or _italic_
• **bold** or __bold__
• image?![alt text](/path/img.jpg "title")
• numbered list: 1. Foo 2. Bar
• to add a line break simply add two spaces to where you would like the new line to be.
• basic HTML tags are also supported
• mathemetical formulas in Latex between \$ symbol

Question tags:

×15,005
×1,512
×15
×3

question asked: 11 Nov '13, 15:03

question was seen: 6,229 times

last updated: 28 Jul, 15:21