n 個の整数のリストが与えられましたが、これらの整数の範囲は 1 から n です。リストに重複はありませんが、整数の 1 つがリストにありません。欠落している整数を見つけなければなりません。
Example: If n=8
I/P [7,2,6,5,3,1,8]
O/P 4
I am using a simple concept to find the missing number which is to get the
sum of numbers
total = n*(n+1)/2
And then Subtract all the numbers from sum.
ただし、数値の合計が最大許容整数を超えると、上記の方法は失敗します。
だから私は2番目の解決策を探し、次のような方法を見つけました:
1) XOR all the elements present in arr[], let the result of XOR be R1.
2) XOR all numbers from 1 to n, let XOR be R2.
3) XOR of R1 and R2 gives the missing number.
この方法はどのように機能しますか?..上記の場合、R1 と R2 の XOR はどのようにして不足している整数を見つけますか?