Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

닌자고양이

[C#] 시간 범위 겹침 여부 체크 본문

C# .NET

[C#] 시간 범위 겹침 여부 체크

닌자고양이 2020. 2. 19. 17:18
bool IsOverlap(TimeSpan a1, TimeSpan a2, TimeSpan b1, TimeSpan b2)
{
	if (a1 > a2)
		return IsOverlap(a1, TimeSpan.FromHours(24), b1, b2) || IsOverlap(TimeSpan.Zero, a2, b1, b2);
	else if (b1 > b2)
		return IsOverlap(a1, a2, b1, TimeSpan.FromHours(24)) || IsOverlap(a1, a2, TimeSpan.Zero, b2);
	else
		return (a1 <= b1 && b1 <= a2) || (b1 <= a1 && a1 <= b2);
}


...

var a1 = new TimeSpan(22, 0, 0);
var a2 = new TimeSpan(05, 0, 0);
var b1 = new TimeSpan(06, 6, 0);
var b2 = new TimeSpan(07, 7, 0);

Console.WriteLine(IsOverlap(a1, a2, b1, b2));

 

Comments