یک تابع بنویسید که تعداد کل اعداد صحیح پوشش داده شده از یک لیست از بازهها را برگرداند. به عبارت دیگر، تعداد اعداد مختلف در لیستها را برگردانید.
مثال
covered_integers([[80, 81], [1, 2], [9, 11]]) ➞ 7
# هفت عدد پوشش داده شدهاند: 1، 2، 9، 10، 11، 80، 81
نمونه ورودی و خروجی
CoveredIntegers([[80, 81], [1, 2], [9, 11]]) ➞ 7
CoveredIntegers([[3, 6], [4, 6], [5, 6]]) ➞ 4
CoveredIntegers([[1, 2], [1, 2]]) ➞ 2
نکات
- بازهها ممکن است همپوشانی داشته باشند، زیرمجموعه یکدیگر باشند یا یکسان باشند.
- برای هر بازه
[l, u]
،l
وu
اعداد صحیح خواهند بود وl <= u
همیشه صحیح خواهد بود. هر دویl
وu
در بازه شامل می شوند.
Assert.Equal(7, Backendbaz.CoveredIntegers(new int[][] { new int[] { 80, 81 }, new int[] { 1, 2 }, new int[] { 9, 11 } })); Assert.Equal(4, Backendbaz.CoveredIntegers(new int[][] { new int[] { 3, 6 }, new int[] { 4, 6 }, new int[] { 5, 6 } })); Assert.Equal(2, Backendbaz.CoveredIntegers(new int[][] { new int[] { 1, 2 }, new int[] { 1, 2 } })); Assert.Equal(11, Backendbaz.CoveredIntegers(new int[][] { new int[] { 1, 11 } })); Assert.Equal(5, Backendbaz.CoveredIntegers(new int[][] { new int[] { 8, 9 }, new int[] { 102, 104 } })); Assert.Equal(14, Backendbaz.CoveredIntegers(new int[][] { new int[] { -3, 10 }, new int[] { -2, 9 }, new int[] { -1, 8 }, new int[] { 0, 7 }, new int[] { 1, 6 }, new int[] { 2, 5 }, new int[] { 3, 4 } }));
نظرات