Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict'
- /**
- * @param {Number} pos
- * @param {String} letter
- * @return {Number}
- */
- const switchState = (pos, letter) => {
- const states = (currentPos) => ({
- 1: letter === 'a' ? 2 : 3,
- 2: letter === 'b' ? 4 : 3,
- 3: 3,
- 4: 4,
- }[currentPos]);
- return states(pos);
- }
- /**
- * @param {String} words
- * @returns {Boolean}
- */
- const validateDfa = (words) => {
- let pos = 1;
- const letters = words.split('');
- for (const letter of letters) {
- pos = switchState(pos, letter);
- }
- return pos === 4;
- }
Add Comment
Please, Sign In to add comment