Skip to content

Instantly share code, notes, and snippets.

@eroltutumlu
Last active August 29, 2015 14:14
Show Gist options
  • Select an option

  • Save eroltutumlu/c0bd63a6e2c42757278c to your computer and use it in GitHub Desktop.

Select an option

Save eroltutumlu/c0bd63a6e2c42757278c to your computer and use it in GitHub Desktop.
Project Euler 52 // Permuted multiples
//https://projecteuler.net/problem=52
#include <stdio.h>
enum boolean{false,true};
typedef enum boolean bool;
int main(void) {
int isFound = false ;
int index = 100002;
int two_multiplier;
int three_multiplier;
int four_multiplier;
int five_multiplier;
int six_multiplier;
while(!isFound)
{
two_multiplier = 2*index;
three_multiplier = 3*index;
four_multiplier = 4*index;
five_multiplier = 5*index;
six_multiplier = 6*index;
if(DigitsOfNumber(two_multiplier)==DigitsOfNumber(six_multiplier) && DigitsOfNumber(three_multiplier)==DigitsOfNumber(six_multiplier) && DigitsOfNumber(four_multiplier)==DigitsOfNumber(six_multiplier) && DigitsOfNumber(five_multiplier)==DigitsOfNumber(six_multiplier) && DigitsOfNumber(index)==DigitsOfNumber(six_multiplier))
{
if(Permuted(two_multiplier,three_multiplier)==true &&Permuted(two_multiplier,four_multiplier)==true&&Permuted(two_multiplier,five_multiplier)==true&&Permuted(two_multiplier,six_multiplier)==true && Permuted(three_multiplier,four_multiplier)==true&&Permuted(three_multiplier,five_multiplier)==true&&Permuted(three_multiplier,six_multiplier)==true)
{
printf("%d ",index);
isFound = true;
}
}
index = index+3;
}
return 1;
}
int DigitsOfNumber(int Number)
{
int index;
int temp;
int sum = 0;
for(index = 0; Number !=0; ++index)
{
temp = Number%10;
Number/=10;
}
return index;
}
int Permuted(int n, int m)
{
int Number[6];
int Number2[6];
int i=0;
int j=0;
int Counter = 0;
while(n!=0 && m!=0)
{
Number[i++]=n%10;
n /=10;
Number2[j++]=m%10;
m /=10;
}
for(i=0;i<6;i++)
{
for(j=0;j<6;j++)
{
if(Number[i]==Number2[j])
{
Counter++;
}
}
}
if(Counter==6)
return true;
else
return false;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment