public static void AirConditioner() { var X = IOLibrary.ReadInt(); var ans = X >= 30; Console.WriteLine(IOLibrary.YesOrNo(ans)); }
public static void MakingTriangle() { var N = IOLibrary.ReadInt(); var L = IOLibrary.ReadIntArray(); var sortedL = L.Sort(); if (N < 3) { Console.WriteLine(0); return; } var count = 0; foreach (var combinationIndex in MathLibrary.GetCombinationIndexCollection(N, 3)) { var i = combinationIndex[0]; var j = combinationIndex[1]; var k = combinationIndex[2]; if (sortedL[i] != sortedL[j] && sortedL[j] != sortedL[k] && sortedL[i] + sortedL[j] > sortedL[k]) { count++; } } Console.WriteLine(count); }
public static void ReversibleCards() { var N = IOLibrary.ReadInt(); var abArray = IOLibrary.ReadInt2DArray(N); var max = 400000; var sum = new int[max]; var ans = 0; for (var i = 0; i < N; i++) { var(a, b) = IOLibrary.ReadInt2(); if (sum[a] == 0) { ans++; } else if (sum[b] == 0) { ans++; } } Console.WriteLine(ans); }
public static void Coins() { var A = IOLibrary.ReadInt(); var B = IOLibrary.ReadInt(); var C = IOLibrary.ReadInt(); var X = IOLibrary.ReadInt(); var count = 0; for (var a = 0; a <= A; a++) { for (var b = 0; b <= B; b++) { for (var c = 0; c <= C; c++) { var total = 500 * a + 100 * b + 50 * c; if (total == X) { count++; } } } } Console.WriteLine(count); }
public static void ChooseMe() { var N = IOLibrary.ReadInt(); var sub = 0L; var subList = new List <long>(); for (var i = 0; i < N; i++) { var(A, B) = IOLibrary.ReadLong2(); sub -= A; var sum = 2 * A + B; subList.Add(sum); } subList.Sort(); var ans = 0; while (sub <= 0) { sub += subList.Last(); subList.RemoveAt(subList.Count - 1); ans++; } Console.WriteLine($"{ans}"); }
public static void UnluckySeven() { var N = IOLibrary.ReadInt(); var count = 0; for (var num = 1; num <= N; num++) { //10進数 if (num.ToString().Contains("7")) { count++; } else { //8進数 if (num.ToOct().Contains("7")) { count++; } } } var ans = N - count; Console.WriteLine(ans); }
public static void SumOfProductOfPairs() { var N = IOLibrary.ReadInt(); var A = IOLibrary.ReadLongArray(); var partSumList = new List <ModInt>() { 0 }; foreach (var a in A) { var sum = partSumList[partSumList.Count - 1] + a; partSumList.Add(sum); } ModInt ans = 0; for (var i = 0; i < N - 1; i++) { ModInt ai = A[i]; // i+1からN番目までの和 var sum = partSumList[partSumList.Count - 1] - partSumList[i + 1]; ans += ai * sum; } Console.WriteLine(ans); }
public static void GentlePairs() { var N = IOLibrary.ReadInt(); var points = IOLibrary.ReadInt2DArray(N); var ans = 0; for (var i = 0; i < N; i++) { for (var j = i + 1; j < N; j++) { if (i < j) { var pointI = points[i]; var pointJ = points[j]; var dx = Math.Abs(pointI[0] - pointJ[0]); var dy = Math.Abs(pointI[1] - pointJ[1]); if (dx >= dy) { ans++; } } } } Console.WriteLine(ans); }
public static void JudgeStatusSummary() { var N = IOLibrary.ReadInt(); var S = IOLibrary.ReadStringArray(N); var results = new string[] { $"AC", $"WA", $"TLE", $"RE", }; var table = results.GroupJoin(S, r => r, c => c, (r, cArray) => new { Reult = r, Count = cArray?.Count(), }); foreach (var item in table) { Console.WriteLine($"{item.Reult} x {item.Count.GetValueOrDefault()}"); } }
public static void Collinearity() { var N = IOLibrary.ReadInt(); var pArray = new Point[N]; for (var i = 0; i < N; i++) { var(x, y) = IOLibrary.ReadInt2(); var p = new Point(x, y); pArray[i] = p; } foreach (var indexArray in MathLibrary.GetCombinationIndexCollection(N, 3)) { var p0 = pArray[indexArray[0]]; var p1 = pArray[indexArray[1]]; var p2 = pArray[indexArray[2]]; var area = Point.CalcTriangleArea(p0 - p1, p0 - p2); if (area == 0) { Console.WriteLine(IOLibrary.YesOrNo(true)); return; } } Console.WriteLine(IOLibrary.YesOrNo(false)); }
public static void GoToSchool() { var N = IOLibrary.ReadInt(); var A = IOLibrary.ReadIntArray() .Select((content, index) => new { Content = content, Index = index, }) .ToArray(); Array.Sort(A, (x, y) => { if (x.Content == y.Content) { return(0); } else if (x.Content < y.Content) { return(-1); } else { return(1); } }); var ans = string.Join(" ", A.Select(a => a.Index + 1)); Console.WriteLine(ans); }
public static void Calc() { var a = IOLibrary.ReadInt(); var ans = a + a * a + a * a * a; Console.WriteLine(ans); }
public static void TwoSequences2() { var N = IOLibrary.ReadInt(); var a = IOLibrary.ReadLongArray(); var b = IOLibrary.ReadLongArray(); var maxA = a[0]; var maxC = a[0] * b[0]; for (var j = 0; j < N; j++) { for (var i = Math.Max(0, j - 1); i <= j; i++) { if (a[i] > maxA) { maxA = a[j]; } } var c = maxA * b[j]; if (c > maxC) { maxC = c; } Console.WriteLine(maxC); } }
public static void Lottery() { var n = IOLibrary.ReadInt(); var m = IOLibrary.ReadInt(); var x = IOLibrary.ReadIntArray().Sort().ToArray(); var cdArray = new int[n * n]; for (var c = 0; c < n; c++) { for (var d = 0; d < n; d++) { cdArray[c * d + d] = c + d; } } for (var a = 0; a < n; a++) { for (var b = 0; b < n; b++) { var xd = m - x[a] + x[b]; var d = x.BinarySearch(xd); if (d >= 0) { Console.WriteLine(IOLibrary.YesOrNo(true)); } } } Console.WriteLine(IOLibrary.YesOrNo(false)); }
public static void HeavyRotation() { var N = IOLibrary.ReadInt(); var color = (N % 2 == 0) ? "White" : "Black"; Console.WriteLine(color); }
public static void KagamiMochi() { var N = IOLibrary.ReadInt(); var d = IOLibrary.ReadIntArray(N); var ans = d.Distinct().Count(); Console.WriteLine(ans); }
public static void RedundantRedundancy() { var N = IOLibrary.ReadInt(); var list = Enumerable.Range(1, N); var ans = MathLibrary.LCM(list); Console.WriteLine(ans + 1); }
/// <summary> /// 7 /// </summary> public static void Bingo() { var gridNum = 3; var A = IOLibrary.ReadInt2DArray(gridNum, gridNum); var N = IOLibrary.ReadInt(); var b = new int[N]; for (var i = 0; i < N; i++) { b[i] = IOLibrary.ReadInt(); } var judgeList = new bool[gridNum, gridNum]; for (var i = 0; i < gridNum; i++) { for (var j = 0; j < gridNum; j++) { //数字をマーク var num = A[i, j]; if (b.Contains(num)) { judgeList[i, j] = true; } } } //ビンゴかどうかチェック //横 for (var i = 0; i < gridNum; i++) { if (judgeList[i, 0] & judgeList[i, 1] & judgeList[i, 2]) { Console.WriteLine(IOLibrary.YesOrNo(true)); return; } } //縦 for (var i = 0; i < gridNum; i++) { if (judgeList[0, i] & judgeList[1, i] & judgeList[2, i]) { Console.WriteLine(IOLibrary.YesOrNo(true)); return; } } //ななめ if (judgeList[0, 0] & judgeList[1, 1] & judgeList[2, 2] || judgeList[0, 2] & judgeList[1, 1] & judgeList[2, 0]) { Console.WriteLine(IOLibrary.YesOrNo(true)); return; } Console.WriteLine(IOLibrary.YesOrNo(false)); }
public static void DuodecimFerra() { var L = IOLibrary.ReadInt(); //重複組合せ var ans = MathLibrary.Combination(L - 1, 11); Console.WriteLine(ans); }
public static void UnevenNumbers() { var N = IOLibrary.ReadInt(); var count = Enumerable.Range(1, N) .Select(num => MathLibrary.Digits(num)) .Count(num => num % 2 == 1); Console.WriteLine(count); }
public static void Alchemist() { var N = IOLibrary.ReadInt(); var v = IOLibrary.ReadIntArray(); var ans = v.Sort().Skip(1).Aggregate((double)v[0], (x, y) => (x + y) / 2.0); Console.WriteLine(ans); }
public static void Payment() { var N = IOLibrary.ReadInt(); var money = 1000; var bills = (N + money - 1) / money; var change = money * bills - N; Console.WriteLine(change); }
public static void Orthogonality() { var N = IOLibrary.ReadInt(); var A = IOLibrary.ReadIntArray(); var B = IOLibrary.ReadIntArray(); var sum = A.Zip(B, (a, b) => a * b).Sum(); Console.WriteLine(IOLibrary.YesOrNo(sum == 0)); }
public static int[] ReadIntArray(int row) { var array = new int[row]; for (var i = 0; i < row; i++) { array[i] = IOLibrary.ReadInt(); } return(array); }
static void Input() { { var str = IOLibrary.ReadLine(); } { var N = IOLibrary.ReadInt(); } { var(N, M) = IOLibrary.ReadInt2(); } { var(N, M, K) = IOLibrary.ReadInt3(); } { var numLong = IOLibrary.ReadLong(); } { var(N, M) = IOLibrary.ReadLong2(); } { var(N, M, K) = IOLibrary.ReadLong3(); } { var input = IOLibrary.ReadIntArray(); } { var input = IOLibrary.ReadLongArray(); } { var list = IOLibrary.ReadIntList(); } { var list = IOLibrary.ReadLongList(); } { var N = 1; var int2DArray = IOLibrary.ReadInt2DArray(N); } { var N = 1; var long2DArray = IOLibrary.ReadLong2DArray(N); } }
public static void ATimesBPlusC() { var N = IOLibrary.ReadInt(); var count = 0; for (var A = 1; A < N; A++) { var BCCount = (N - 1) / A; count += BCCount; } Console.WriteLine(count); }
/// <summary> /// 11 /// </summary> public static void BreakNumber() { var N = IOLibrary.ReadInt(); var product = 1; while (product * 2 <= N) { product <<= 1; } Console.WriteLine(product); }
public static void DivideTheProblems() { var N = IOLibrary.ReadInt(); var d = IOLibrary.ReadIntArray(); var sortedD = d.Sort(); var middle = N / 2; var maxABC = sortedD[middle - 1]; var minARC = sortedD[middle]; Console.WriteLine(minARC - maxABC); }
public static void TrapezoidSum() { var N = IOLibrary.ReadInt(); var sum = 0L; for (var i = 0; i < N; i++) { var(A, B) = IOLibrary.ReadLong2(); sum += (A + B) * (B - A + 1) / 2; } Console.WriteLine(sum); }
/// <summary> /// 9 /// </summary> public static void CollectingBallsEasy() { var N = IOLibrary.ReadInt(); var K = IOLibrary.ReadInt(); var x = IOLibrary.ReadIntArray(); var sum = 0; for (var i = 0; i < N; i++) { var length = Math.Min(x[i], K - x[i]); sum += 2 * length; } Console.WriteLine(sum); }