Задача
Выведите все четырехзначные числа от $a$ до $b$, содержащие разные цифры.
Входные данные
Два целых числа $a$ и $b$ ([latex]1000 \le a \le b \le 9999[/latex]).
Выходные данные
Выведите в одной строке все числа от $a$ до $b$ с разными цифрами.
Тесты
Входные данные | Выходные данные |
2000 2015 | 2013 2014 2015 |
9875 9999 | 9875 9876 |
1000 1234 | 1234 |
3612 3612 | 3612 |
8800 8888 | Standart output is empty |
1000 1000 | Standart output is empty |
Код программы
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <iostream> using namespace std; int main() { int x, y; // границы поиска cin >> x >> y; for (int i = x; i < y + 1; i++){ int a = i / 1000; // цифры int b = (i / 100) % 10; int c = (i / 10) % 10; int d = i % 10; if ( (a != b) && (a != c) // проверка разности && (a != d) && (b != c) && (b != d) && (c != d) ) cout << i << ' '; } return 0; } |
Решение
Для каждого числа из заданного промежутка [latex][a;b][/latex] выделяем его цифры и сравниваем их между собой. Искомые числа будут состоять из неравных между собой цифр.
Для отправки комментария необходимо войти на сайт.