Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,885 questions

51,811 answers

573 users

How to find pairs in an array with a given difference N between them in C#

1 Answer

0 votes
using System;
using System.Collections.Generic;

public class Program
{
	public static void findPairs(int[] arr, int diff) {
		ISet<int> set = new HashSet<int>();

		foreach (int i in arr) {
			if (set.Contains(i - diff)) {
				Console.WriteLine(i + ", " + (i - diff));
			}

			if (set.Contains(i + diff)) {
				Console.WriteLine((i + diff) + ", " + i);
			}

			set.Add(i);
		}
	}
	public static void Main(string[] args)
	{
		int[] arr = new int[] {4, 1, 7, 5, 8, 6, 9, 10, 12};
		int diff = 3;

		findPairs(arr, diff);
	}
}




/*
run:
  
4, 1
7, 4
8, 5
9, 6
10, 7
12, 9
  
*/

 



answered Jul 16, 2022 by avibootz
...