C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

数字を削除した後にx番目の要素を見つけるC++コード


nとxの2つの数があるとします。最初のn個の自然数は黒板に書かれています。 Inith(iは1から開始)操作では、黒板からi番目の番号を削除します。 i未満の数になると、削除タスクを停止します。削除を停止した後、x番目の残りの数を見つける必要があります。

したがって、入力がn=69のような場合。 x =6の場合、出力は12になります。最初の操作ではi =1、つまりremove1、次に2番目の操作ではi =2ですが、シーケンスは2、3、4 ...なので、2番目の数値は3、remove3、このように、最終的にx番目の数値は12になります。

ステップ

これを解決するには、次の手順に従います-

return 2 * x

理解を深めるために、次の実装を見てみましょう-

#include <bits/stdc++.h>
using namespace std;
int solve(int n, int x){
   return 2 * x;
}
int main(){
   int n = 69;
   int x = 6;
   cout << solve(n, x) << endl;
}

入力

69, 6

出力

12

  1. C++で連続番号のソートされた配列から欠落している要素を検索します

    コンセプト n個の異なる整数の特定の配列array[]に関して、要素は1つの欠落した要素とともに昇順で順番に配置されます。私たちの仕事は、不足している要素を特定することです。 入力 array[] = {1, 2, 3, 4, 5, 6, 7, 9} 出力 8 入力 array[] = {-4, -2, -1, 0, 1, 2} 出力 -3 入力 array[] = {1, 2, 3, 4} 出力 -1 欠落している要素はありません。 メソッド 原則 不整合を探す:この原則によれば、要素とそのインデックスの違いは、すべての要素に対してarray[0]である必要があります。 例

  2. C ++でn個の整数の配列の1つおきの要素を削除した後、最後の要素を検索します

    1からnまでの整数を含む1つの循環配列があるとします。最初の要素から始まる2つおきの要素を削除した後、リストに残る最後の要素を見つけます。入力が5の場合、配列は[1、2、3、4、5]になります。 1から開始します。2番目の要素を削除すると、次のようになります- 1 0 3 4 5 1 0 3 0 5 0 0 3 0 5 0 0 3 0 0 したがって、リストに残る要素は3です。 この問題は再帰を使用して解決します。 nが偶数であると仮定します。 2、4、6の数字は削除され、1から再開します。したがって、n/2の数値は削除されます。そして、奇数の数字1、3、5、…n/2のみを含むn/2の配列