2012-02-27 3 views
1

私は、carreerサイトの1つでアルゴリズムの自動判定を練習していますが、私は次の質問があります。
パズルの一つでは疑問が2つのソート配列の中央値を見つけることで、実装するメソッドのシグネチャは次のとおりです。ダブルと整数とコンバージョンの基礎に関するJavaの混乱

public double findMedianSortedArrays(int A[], int B[]) 

私は、コードを書かれ、テストの一部が失敗しました。次のように障害が報告されたものの結果を見ると
は以下のとおりです。

Input  Output Expected  
[], [1]  1.0 1  
[2], []  2.0 2 

私がファンダメンタルズにさびだそうです。

私の質問:どのようにそれは1または2を期待し、この方法は doubleを返す場合1.0を拒否することができますか?マージの計算上のコードの
私の抜粋です:

if(array.length %2 == 0){ 

    return (array[middle] + array[middle - 1])/(double)2;  
} 
else{ 
     return (double)array[middle]; 

    } 

enter image description here

+1

あなたのテストを表示できますか? – biziclop

+0

あなたはどういう意味ですか?それは自動ジャッジサイトです。サイトのリンクを意味していますか? – Cratylus

+0

@biziclop:更新されたOP – Cratylus

答えて

2

それは裁判官でのエラーです。私はthe siteに行けば、ちょうど1行、return 0;に充填(「ジャワ」を選択し、以下のJava実装に記入:

public class Solution { 
    public double findMedianSortedArrays(int A[], int B[]) { 
     // Start typing your Java solution below 
     // DO NOT write main() function 
     return 0; 
    } 
} 

レポートは、すべてのケースについてoutput: 0.0を述べ

C++と同等でありません。同じ問題に苦しむように見えるではない、私はこの中で記入した場合:。

class Solution { 
public: 
    double findMedianSortedArrays(int A[], int m, int B[], int n) { 
     // Start typing your C/C++ solution below 
     // DO NOT write int main() function 
     return 0; 
    } 
}; 

、レポートには、すべてのケースについてoutput: 0を述べ

+0

バグであれば大丈夫です。私が変換にあまりにも錆びていない限り... – Cratylus

関連する問題