Puzzle for 25 Jun 2009

shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Find a three digit prime number which
  • Has all prime digits
  • Forms primes with its first two digits.
  • Forms primes with its last two digits.
0
nimesh's Avatar, Join Date: Apr 2009
Invasive contributor
I say 373

Has all prime digits - All are Prime 3, 7
Forms primes with its first two digits - Forms Prime with first 2 digits 37
Forms primes with its and last two digits. - Forms Prime with Last two - 73

The last condition looks incomplete.
There was no condition of uniqueness of digits
There was no condition like least 3 digit prime
0
Mridula's Avatar, Join Date: Mar 2008
Pro contributor
179 - 3 unique digit prime no.

17 is a prime no.
79 is prime no.
0
nimesh's Avatar, Join Date: Apr 2009
Invasive contributor
Quote:
Originally Posted by Mridula View Post
179 - 3 unique digit prime no.

17 is a prime no.
79 is prime no.
But 1 is not a prime no
Sorry Mridula for Yesterday
0
shabbir's Avatar, Join Date: Jul 2004
Go4Expert Founder
Quote:
Originally Posted by nimesh View Post
The last condition looks incomplete.
Like.
Quote:
Originally Posted by nimesh View Post
There was no condition of uniqueness of digits
There was no condition like least 3 digit prime
Dont confuse with yesterdays problem and its a fresh one with not any condition.

I would like to also see a reason as to how you landed to the number you have as answer.
0
nimesh's Avatar, Join Date: Apr 2009
Invasive contributor
"The last condition looks incomplete."
I mean the sentence formation is incorrect. Which you have corrected now...haha

What reason would you like? [btw, you didn't asked earlier to specify the reason]
I just looked at the list of prime numbers and checked with the conditions you gave.

Other numbers that I thought were:
113, 131, 137, 173, 197, 311, 313, 317 - But 1 is not a prime number
So the first number that I got was 373
0
xpi0t0s's Avatar, Join Date: Aug 2004
Mentor
All possible results are
237
373
537
737

Code:
int is_prime(int n)
{
	if (n==2) return 1;
	if (n<3) return 0;
	if (!(n%2)) return 0;
	for (int i=3; i*i<=n; i+=2)
	{
		if (!(n%i))
			return 0;
	}
	return 1;
}

int _tmain(int argc, _TCHAR* argv[])
{
	for (int i=100; i<1000; i++)
	{
		int digits[3];
		int temp=i;
		digits[2]=temp%10; temp/=10;
		digits[1]=temp%10; temp/=10;
		digits[0]=temp%10;
		temp=i;
		int ms100,ls100;
		ms100=digits[0]*10+digits[1];
		ls100=digits[1]*10+digits[2];
		if (is_prime(digits[0]) && is_prime(digits[1]) && is_prime(digits[2]))
		{
			if (is_prime(ms100) && is_prime(ls100))
			{
				printf("%d\n",i);
			}
		}
	}
	return 0;
}
0
SaswatPadhi's Avatar, Join Date: May 2009
~ Б0ЯИ Τ0 С0δЭ ~
LOL @ xpi0t0s, you brute-forced the solution for such a simple question !!
I mean, shabbir didn't even mention the word "smallest". So, that was really easy to figure out a 3-digit number.

Congrats nimesh.

@ shabbir:
So, you changed the posting time today (by almost -12 hours) !!
I'll have to wait till 2morrow.

Last edited by SaswatPadhi; 25Jun2009 at 13:11..
0
nimesh's Avatar, Join Date: Apr 2009
Invasive contributor
xpi0t0s - 237 is not a prime number (237 = 3 * 79) List of Prime Numbers

Thanks Saswat, but the winner is not yet confirmed by Shabbir
0
xpi0t0s's Avatar, Join Date: Aug 2004
Mentor
Whoops, you're right, neither are 537 and 737 so the only result is 373. Adding
Code:
if (is_prime(i))
fixed the problem.