Last active
April 17, 2018 08:11
-
-
Save lovasoa/9c008e9c003b917b9deb5dab91ac7037 to your computer and use it in GitHub Desktop.
МУХА + МУХА = СЛОН
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include<iostream> | |
using namespace std; | |
// муха + муха = слон | |
int main() { | |
// Числа не могут начитаться с нуля. | |
// Поэтому муха >= 1000 | |
// и слон = 2*муха содержит 4 числа, поэтому | |
// 2*муха <= 9999 | |
// муха <= 4999 | |
for(int myxa=1000; myxa<=4999; myxa++) { | |
bool numbers[10] = {0}; | |
int allnums, clon=2*myxa; | |
// 10000*муха + слон, это большое число которое сделанное из всех цифр | |
// мухи и слона. Например, если муха=1234, то слон=2468 и | |
// 10000*муха + слон = 12342468 | |
// в этом цикле, мы проверяем что это большое число составляют только разные цифры | |
for(allnums=10000*myxa+clon; allnums>0; allnums/=10) { | |
if(numbers[allnums%10]) break; | |
else numbers[allnums%10] = true; | |
} | |
if(allnums==0) cout << myxa << "+" << myxa << "=" << clon << endl; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment