나는 이것이 전에 게시되었지만 내 길을하려했다는 것을 알고있다. 나는 코드를 시도했지만 잘못된 결과를 보여주고있다! 분명히 거기에 내 논리에 오류가 있습니다. 아무도 나를 설명 해주십시오. 오류가 어디 있습니까?배열 2의 원소의 k 번째로 큰 것을 찾는다
여기서 배열은 내림차순으로 정렬되어 있다고 가정합니다!
int kthlargestsum(int a[], int b[],int k)
{
int aIndex=0;
int bIndex=0;
int sum=0;
int i;
for(i=0;i<k;++i)
{
if(a[aIndex]>b[bIndex])
{
sum+=a[aIndex];
++aIndex;
}
else
{
sum+=a[bIndex];
++bIndex;
}
}
printf("the output is %d",sum);
}
main()
{
int a[]={10,9,6,4,2};
int b[]={11,9,7,1};
int k;
printf("enter the value of k \n");
scanf("%d",&k);
kthlargestsum(a,b,k);
}
이 질문에 대한 해결책을 읽고 이해하십시오. http://stackoverflow.com/questions/5212037/find-the-kth-largest-sum-in-two-arrays – PengOne