Algorithm of 847 - A Multiplication Game

Problem Description Link
Algorithm
It is a quite hard to find this rule to solve this problem... however if Stan and Ollie plays perfect game, then Stan will always try to multiply p with 9 and Ollie will always try to multiply p with 2... and so on, so just simulate the process  (i.e. for n, you multiply by 9, then multiply by 2, then multiply by 9... etc until p>= n), then check whose turn can make p becomes greater or equal to p and output the winner name.
image

Solution of 847 - A Multiplication Game

Problem Description
source:https://uva.onlinejudge.org/external/8/847.html

Stan and Ollie play the game of multiplication by multiplying an integer p by one of the numbers 2 to 9. Stan always starts with p = 1, does his multiplication, then Ollie multiplies the number, then Stan and so on. Before a game starts, they draw an integer 1 < n < 4294967295 and the winner is who first reaches p ≥ n. 

Input and Output

 Each line of input contains one integer number n. For each line of input output one line either 

image

Algorithm of 401 - Palindromes

Problem Description Link
Algorithm:
This is a simple problem to solve this problem you need to read carefully.
However you can follow this technique to solve this problem.
1. At first you need 3 array for input string , reverse string and mirror string.
2. get input string
3. put value in reverse string array from input string . Last value of input string insert into
    first value of reverse string and so on.
4. put value in mirror string from input string reverse order
    when insert character in follow condition
    if input string character is E then insert 3 and vise versa
    if input string character is L then insert J and vise versa
    if input string character is S then insert 2 and vise versa
    if input string character is Z then insert 5 and vise versa
5. Check reverse string with input string if same put a falg rf=1;
6. for mirror check
    Check mirror string with input string character by character
    if get B,C,D,F,G,K,N,P,Q,R,4,6,7,9 in input string then this sting not mirror string
    otherwise it is mirror so flag mp=1;
N.B: in this problem O and 0(zero) are same.
7. for print check
    if(rp==0 && mp==0)
            printf("%s -- is not a palindrome.\n\n",input);
        else if(rp==1 && mp==0)
            printf("%s -- is a regular palindrome.\n\n",input);
        else if(rp==0 && mp==1)
            printf("%s -- is a mirrored string.\n\n",input);
        else if(rp==1 && mp==1)
            printf("%s -- is a mirrored palindrome.\n\n",input);
image

Solution of 401 - Palindromes

Problem Description
source:https://uva.onlinejudge.org/external/4/401.html

A regular palindrome is a string of numbers or letters that is the same forward as backward. For example, the string “ABCDEDCBA” is a palindrome because it is the same when the string is read from left to right as when the string is read from right to left. A mirrored string is a string for which when each of the elements of the string is changed to its reverse (if it has a reverse) and the string is read backwards the result is the same as the original string. For example, the string “3AIAE” is a mirrored string because ‘A’ and ‘I’ are their own reverses, and ‘3’ and ‘E’ are each others’ reverses. A mirrored palindrome is a string that meets the criteria of a regular palindrome and the criteria of a mirrored string. The string “ATOYOTA” is a mirrored palindrome because if the string is read backwards, the string is the same as the original and because if each of the characters is replaced by its reverse and the result is read backwards, the result is the same as the original string. Of course, ‘A’, ‘T’, ‘O’, and ‘Y’ are all their own reverses. A list of all valid characters and their reverses is as follows.

Programming Challenges by Steven S. Skiena and Migual A. Revilla

This book has been designed to serve as a textbook for three types of courses:
•Algorithm courses focusing on programming.
•Programming courses focusing on algorithms.
•Elective courses designed to train students to participate in competitions such
as the Association for Computing Machinery (ACM) International Collegiate
Programming Contest and the International Olympiad in Informatics.

Pedagogical features of this book include:
1. Complements Standard Algorithm Texts.
2. Provides Complete Implementations of Classical Algorithms.
3. Integrated Course Management Environment .
4. Help for Students at All Levels.





To Download This Book Click Here

Discrete mathematics and its applications 6th Edition

A  discrete  mathematics course  has more than  one purpose.  Students  should learn  a particular
set of  mathematical facts and how to apply them; more importantly,  such a course should  teach
students  how to  think  logically  and  mathematically.  To  achieve  these  goals,  this  text  stresses
mathematical  reasoning  and the  different  ways  problems  are  solved.  Five  important  themes
are  interwoven in  this  text: mathematical reasoning, combinatorial analysis, discrete structure s,
algorithmic thinking, and applications and  modeling. A successful discrete mathematics  course
should carefully blend and balance all five themes.
1.  Mathematical Reasoning.
2.  Combinatorial Analysis.
3.  Discrete Structures.
4.  Algorithmic  Thinking.
5.  Applications and  Modeling
To Download This Book Click Here

Algorithm of 10189 - Minesweeper

Problem Description Link
Algorithm:
In this problem if you compare with "." and increase the adjacent value it is more time consume and get garbage value when row=0 or row=n
 in this case no have 8 adjacent value.
 so you can compare with "*" and generate another 2D value array that contain only value.
 if get "*" in input array then increase the all adjacent value and store that value in value array.
After generating the all value check from input array if character is "*" then print the "*" otherwise print from value array for this position.
image

Solution of 10189 - Minesweeper

Problem Description
source:https://uva.onlinejudge.org/external/101/10189.html

Have you ever played Minesweeper? It’s a cute little game which comes within a certain Operating System which name we can’t really remember. Well, the goal of the game is to find where are all the mines within a M × N field. To help you, the game shows a number in a square which tells you how many mines there are adjacent to that square. For instance, supose the following 4 × 4 field with 2 mines (which are represented by an ‘*’ character): 

*... 
.... 
.*.. 
.... 
If we would represent the same field placing the hint numbers described above, we would end up
with:
*100 
2210 
1*10 
1110
As you may have already noticed, each square may have at most 8 adjacent squares.


image

Algorithm of 10533 - Digit Primes

Problem Description Link

Algorithm:

This is a simple prime related problem
if a number is a prime then check that if sum of prime digit also prime then this digit is called digit prime
For example the prime number 41 is a digit prime because 4+1=5 and 5 is a prime number. 17 is not a digit prime because 1+7 = 8, and 8 is not a prime number.
But to solve this problem if you follow ittarative way then you may got TLE.
so you must generate prime and digit-prime before goe input.
and follow this technique.
1.pre calculate number of digit primes from 1 to 1000000
2. when you get t1 & t2 , number of digit primes t2 subtract number of digit primes t1-1
3. if t1 = 10, t2 = 100 . Number of digit primes at 10 is 4 and number of digit primes at 100 is 14
so dprime[100] - dprime[10-1] = 14 - 4 = 10
4. print the difference.

image

Solution of 10533 - Digit Primes

Problem Description
source:https://uva.onlinejudge.org/external/105/10533.html

A prime number is a positive number, which is divisible by exactly two different integers. A digit prime is a prime number whose sum of digits is also prime. For example the prime number 41 is a digit prime because 4 + 1 = 5 and 5 is a prime number. 17 is not a digit prime because 1 + 7 = 8, and 8 is not a prime number. In this problem your job is to find out the number of digit primes within a certain range less than 1000000. 

Input 

First line of the input file contains a single integer N (0 < N ≤ 500000) that indicates the total number of inputs. Each of the next N lines contains two integers t1 and t2 (0 < t1 ≤ t2 < 1000000). 

Output 

image