Geeksforgeeks

Error

×

Leaderboard

Showing:

Handle | Score |
---|---|

@Ibrahim Nash | 6420 |

@blackshadows | 6380 |

@mb1973 | 5704 |

@Quandray | 5245 |

@akhayrutdinov | 5111 |

@saiujwal13083 | 5046 |

@sanjay05 | 3762 |

@kirtidee18 | 3673 |

@marius_valentin_dragoi | 3523 |

@mantu_singh | 3510 |

@sushant_a | 3459 |

Complete Leaderboard | |

Handle | Score |

@cfwong8 | 1134 |

@gurshehzadsingh | 676 |

@nithinreddy3210 | 610 |

@Run_for_life | 570 |

@divyagupta221100 | 557 |

@jha8768 | 553 |

@AkashLahoty | 537 |

@aayushdesai01 | 526 |

@riyakumaribkj | 524 |

@amansinha74458 | 503 |

@dreamerdreamer | 488 |

Complete Leaderboard |

Given an array **arr** of size **n**. Print all the numbers less than **k **and should be such that the difference between every adjacent digit should be **1** in the array.

**Note: **Return empty list if no such number present, driver code will automatically print -1.

**Example 1:**

**Input:
**n = 8, k = 54
arr[] = {7, 98, 56, 43, 45, 23, 12, 8}
**Output:** 43 45 23 12
**Explanation:** 43 45 23 12 all these numbers
have adjacent digits diff as 1 and they are
less than 54.

**Example 2:**

**Input:
**n = 10, k = 1000
arr[] = {87, 89, 45, 235, 465, 765, 123,
987, 499, 655}
**Output:** 87 89 45 765 123 987

**Your Task:**

You don't need to read input or print anything. Your task is to complete the function **getDigitDiff1AndLessK()** which takes the array of integers **arr, n** and **k **as parameters and returns a list of integer denoting the answer.

**Expected Time Complexity:** O(n)

**Expected Auxiliary Space:** O(1)

**Constraints: **

1 <= n <= 10^{7}

1 <= k, arr[i] <= 10^{18}

Login to report an issue on this page.

We strongly recommend solving this problem on your own before viewing its editorial. Do you still want to view the editorial?

YesLoading...

Absolute Difference of 1

...