Dalam artikel ini, kita diberi nombor n dan kita perlu membuang nombor pendua dalam nombor yang diberikan.
Input: x = 12224 Output: 124 Input: x = 124422 Output: 1242 Input: x = 11332 Output: 132
Dalam soalan yang diberikan, kami akan meneliti semua nombor dan mengeluarkan pendua.
Dalam kaedah yang diberikan, kami akan mengulangi semua nombor sekarang n nombor dari kanan ke kiri. Kami mengulangi nombor n dengan mengambil n modulo 10 dan kemudian membahagikan n dengan 10. Sekarang nombor semasa kami ialah n mod 10. Kami menyemaknya dengan nombor sebelumnya. Jika nombornya adalah sama, kita kini mengulangi n. Jika mereka tidak serupa, kami menambah nombor ini pada nombor baharu, menukar nombor sebelumnya kepada nombor semasa dan meneruskan gelung.
#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
Atas ialah kandungan terperinci Keluarkan digit pendua daripada nombor yang diberikan menggunakan C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!