首頁 > 後端開發 > C++ > 使用C++移除給定數字中的重複數字

使用C++移除給定數字中的重複數字

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2023-09-01 20:17:06
轉載
910 人瀏覽過

使用C++移除給定數字中的重複數字

在本文中,我們給出了一個數字 n,我們需要刪除給定數字中的重複數字。

1

2

3

4

5

6

7

8

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。如果它們不相似,我們將這個數字添加到新數字中,將前一個數字更改為當前數字,然後繼續循環。

範例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

#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;

}

登入後複製

輸出

1

123232

登入後複製

上述程式碼的解釋

在上述方法中,我們只是簡單地遍歷n的數字,當我們的前當一個數字和當前數字不匹配時,我們將這樣的數字添加到我們的新數字中,而且隨著數字的添加,我們還增加了po,它用於我們數字的位置,如果我們當前和前一個數字匹配-我們不運行這個程式碼塊,並繼續循環直到n變成0。

結論

在本文中,我們解決了一個問題,即刪除給定數字中的重複數字。我們也學習了這個問題的C 程序和我們解決這個問題的完整方法(正常方法)。我們可以用其他語言如C、Java、Python和其他語言來寫相同的程式。希望您會發現本文有幫助。

以上是使用C++移除給定數字中的重複數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
objective-c - 關於C語言指標的問題
來自於 1970-01-01 08:00:00
0
0
0
C語言計算順序問題
來自於 1970-01-01 08:00:00
0
0
0
linux - 一道C語言printf的經典題目
來自於 1970-01-01 08:00:00
0
0
0
Linux下一道C語言的經典面試題
來自於 1970-01-01 08:00:00
0
0
0
在PHP語言中,C#ASCII碼等價表示為
來自於 1970-01-01 08:00:00
0
0
0
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板