この記事では、数値 n が与えられ、指定された数値内の重複する数値を削除する必要があります。
Input: x = 12224 Output: 124 Input: x = 124422 Output: 1242 Input: x = 11332 Output: 132
指定された問題では、すべての数値をループして重複を削除します。
指定されたメソッドでは、n 個のすべての数値を右から左に反復処理します。 n の剰余を 10 として取り、n を 10 で割ることによって、n の数を反復処理します。現在の数値は n mod 10 です。以前の番号と照合します。数値が等しい場合は、n 回繰り返します。類似していない場合は、この数値を新しい数値に追加し、前の数値を現在の数値に変更して、ループを続行します。
#include <bits/stdc++.h> #define MOD 1000000007 using namespace std; int main() { int n = 1222333232; // given n int new_n = 0; // new number int po = 1; // will b multiple of ten for new digits int prev = -1; // previous digit int curr; // current digit while(n) { curr = n % 10; if(prev != curr) { // if a digit is not repeated then we go in this block new_n = new_n + (curr * po); // we add a new digit to new_n po *= 10; prev = curr; } n /= 10; } cout << new_n << "\n"; return 0; }
123232
上記のメソッドでは、単純に n の数を反復処理します。番号が現在の番号と一致しない場合、その番号を新しい番号に追加します。番号が追加されると、現在と前の番号が一致する場合に番号の位置に使用される po も追加されます。これは実行されません。コードのブロックを開始し、n が 0 になるまでループを続けます。
この記事では、指定された番号から重複する数字を削除する問題を解決しました。また、この問題に対する C プログラムと、この問題を解決する完全な方法 (通常の方法) も学びました。同じプログラムを C、Java、Python などの他の言語で書くことができます。この記事がお役に立てば幸いです。
以上がC++ を使用して指定された数値から重複する数字を削除するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。