• Skip to primary navigation
  • Skip to content
  • Skip to primary sidebar
  • Skip to secondary sidebar

GoHired

Interview Questions asked in Google, Microsoft, Amazon

Join WeekEnd Online Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

  • Home
  • Best Java Books
  • Algorithm
  • Internship
  • Certificates
  • About Us
  • Contact Us
  • Privacy Policy
  • Array
  • Stack
  • Queue
  • LinkedList
  • DP
  • Strings
  • Tree
  • Mathametical
  • Puzzles
  • Graph

Count Possible Decodings of a given Digit Sequence

February 10, 2015 by Dhaval Dave

Find number of ways a string can be decoded into, if A=1, B=2, C=3 … Z=25 and encoding number is 123 ways decoding can be done is
1 2 3 = A B C
1 23  = A X
12 3  = L C

How to find total number of decodings possible.
this is DP problem.
Start thinking in pattern.if
1 2 3 is String/Array input.

– 1 can be decoded in 1 way.
– 2 cab be decoded in 1 way.
– 1 2 (along with previous one < 26) so 2 can be decoded in (old number of way + 1) = 2 ways
– 3 can be decoded in 1 way
– 2 3 ( can be decoded also as < 26) so total = 3 ways.

Total ways = 3

Algo

input 
string A[N] 
NoOfWay[0]=1
NoOfWay[1]=2

for (i=1 to N){
   if (A[i] <= 26) NoOfWay [ i+1 ] = NoOfWay [ i ];
   if ( A[i] + (A[i-1]*10) <= 26 )  NoOfWay [ i+1 ] = NoOfWay [ i+1 ] + NoOfWay [ i – 1 ];
}
return NoOfWay [ N ]

Its very easy to code.
You can try ur self.
PS : We have assumed that number will be in range of 1-9.
You can edit algo/code to ensure numbers like 103 also. (0-9)
You can working code : http://ideone.com/2QA9Cq

 

Similar Articles

Filed Under: Amazon Interview Question, Flipkart Interview Questions, Interview Questions, Microsoft Interview Questions, problem Tagged With: Dynamic Programming, Mathematical

Reader Interactions

Primary Sidebar

Join WeekEnd Online/Offline Batch from 4-April-2020 on How to Crack Coding Interview in Just 10 Weeks : Fees just 20,000 INR

Join WeekEnd Online/Offline Batch from 4-April-2020

WhatsApp us

Secondary Sidebar

Custom Search

  • How I cracked AMAZON
  • LeetCode
  • Adobe
  • Amazon
  • Facebook
  • Microsoft
  • Hacker Earth
  • CSE Interview

Top Rated Questions

Templates in C++

Rectangular chocolate bar Create at least one piece which consists of exactly nTiles tiles

Find two non repeating elements in an array of repeating elements

ADOBE Aptitude C Language Test

Stock Buy Sell to Maximize Profit

Connect n ropes with minimum cost

Check a String is SUBSEQUENCE of another String Find Minimum length for that ( DNA Matching )

Maximum occurred Smallest integer in n ranges

DFS (Depth First Search)

Level order traversal in Spiral form

Difference between a LinkedList and a Binary Search Tree BST

Test Cases for Round Function

Closed Parentheses checker

Count number of ways to reach a given score in a game

CodeChef Code SGARDEN

Amazon Interview On-Campus For Internship – 1

Edit Distance ( Dynamic Programming )

How Radix sort works

write a c program that given a set a of n numbers and another number x determines whether or not there exist two elements in s whose sum is exactly x

Given a sorted array and a number x, find the pair in array whose sum is closest to x

Wrong Directions given find minimum moves so that he can reach to the destination

Maximum size of square sub matrix with all 1’s in a binary matrix

Get Minimum element in O(1) from input numbers or Stack

Convert Decimal to Roman numbers / Romanizer HackerEarth Code

Leetcode: Edit Distance

Check Binary Tree is Binary Search Tree or not

Sequence Finder Dynamic Programming

Trie Dictionary

C Program for TAIL command of UNIX

Python List

Copyright © 2026 · Genesis Framework · WordPress · Log in