using System; using System.Linq; namespace No { class MainClass { static int n; static int[][] a; static int[] b; public static void Main(string[] args) { n = int.Parse(Console.ReadLine()); a = new int[2][]; int[] aa = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray(); b = Console.ReadLine().Split(' ').Select(x => int.Parse(x)).ToArray(); int max_battle_number = n; for (int start = 0; start < n; start++) { int[] battle_number = new int[n]; int pos = start, count = 0; a[0] = new int[n]; for (int i = 0; i < n; i++) a[0][i] = aa[i]; a[1] = new int[n]; while (true) { int battle_index = checkBattler(); a[0][battle_index] += b[pos] / 2; a[1][battle_index]++; pos++; if (pos >= n) pos = 0; count++; if (count == n) break; } if (max_battle_number > a[1].Max()) max_battle_number = a[1].Max(); } Console.WriteLine(max_battle_number); } private static int checkBattler() { int min_level = a[0].Min(); int max_battle = a[1].Max(); int target_index = 0; foreach(var data in a[0].Select((value, index) => new {Value = value, Index = index})) { if (data.Value == min_level) { if (a[1][data.Index] <= max_battle) { max_battle = a[1][data.Index]; target_index = data.Index; } } } return target_index; } } }