# Given an array of ints, return true if the array contains a 2 next to a 2 somewhere.

237 views

## Problem :

I am completely stuck on this problem

Given an array of ints, return True if the array contains a 2 next to a 2 somewhere.

`has22([1, 2, 2]) → True`
`has22([1, 2, 1, 2]) → False`
`has22([2, 1, 2]) → False`

I know the basic idea but I am unable to implement it. I would also like to know that what type of the problem is this, eg. graph, search?

`def has22(mynums):`
`for l in mynums:`
`    if ( (mynums[l] = 2) and (mynums[l+1] = 2) )`
`        return True`
`return False `

## Solution :

Please find below the required source code:

`def has22(mynums):`
`    for j in range(len(mynums) - 1):`
`        if mynums[j] == 2 and mynums[j+ 1] == 2:`
`            return True`
`    return False`

This was the easiest solution that I came up with.

Using the for loop to check if the iterated number, mynums[j] == 2 "and" the one very next to it, which is [j+1] == 2 as well.

Here (len(mynums)-1): this line will just prevent it from going out of the range through the for loop as the j+1 on the final loop will check out of the range.

I hope you have clearly understood the solution given to you by me.

## Related questions

417 views
Problem : I am facing following issue need solution return true if the string "cat" and "dog" appear the same number of times in the given string
1.4K views
Problems : Assign the size of userInput to stringSize. Ex: if userInput = "Hello", output is: Size of userInput: 5 #include <stdio.h> #include <string.h> int main(void) { char userInputArray = ""; int stringInputSize = 0; strcpy(userInputArray, "Hello"); /* Your solution starts here */ printf("Size of userInputArray: %d\n", stringInputSize); return 0; }
1 vote