2017-07-13 24 views
0

對問題陳述一個HackerRank語句錯誤輸出的問題,請this.關於與上字謎

(我省略了庫)。

我的代碼工作正常時(在線評測測試的代碼),除了這案例:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

我很想知道爲什麼輸出預計爲104磨片n交叉點是零?

std::string string_intersection; 

int number_needed(string a, string b) { 

int y = a.length(); 
int z = b.length(); 

sort(a.begin(), a.end()); 
sort(b.begin(), b.end()); 

std::set_intersection(a.begin(), a.end(), b.begin(), b.end(), std::back_inserter(string_intersection)); 

int num, x = string_intersection.length(); 

if(x==0) 
    num = 0; 

else 

num = y + z - 2*x; 

return num; 


} 

    int main(){ 
    string a; 
    cin >> a; 
    string b; 
    cin >> b; 
    cout << number_needed(a, b) << endl; 
    return 0; 
} 

回答

0

只要改變

if(x==0) 
    num = y+z; //as everything needs to be deleted 

else 

    num = y + z - 2*x; 

Check for your self in hacker rank

+0

的重要組成部分,我失蹤了。謝謝! – stoicGoyal