Problem Statement
It can be seen that the number, 125874, and its double, 251748, contain exactly the same digits, but in a different order.
Find the smallest positive integer, x, such that 2x, 3x, 4x, 5x, and 6x, contain the same digits.
Solution(bruteforce)
Here is the C++ implementation of this problem.
#include <iostream> #include <algorithm> #include <string> #include <cstdlib> using namespace std; int main(){ long i,j,k,l,n = 1; char temp[15],tempp[15]; while( true ){ sprintf( temp,"%ld", n * 2); sort( temp,temp + strlen(temp) ); for( i = 3; i <= 6; i++ ){ sprintf( tempp,"%ld", n * i); sort( tempp,tempp + strlen(tempp) ); if( strcmp( temp,tempp) ) break; } //printf("N>%ld I>%ld\n",n,i); if( i == 7) break; n++; } printf("%ld\n",n); return 0; }
No comments:
Post a Comment