using System.Text; using static System.Math; using System.Collections.Generic; using System.Linq; using System; public class P { public int x { get; set; } public int y { get; set; } } public class Hello { static void Main() { var n = 1000000 / 4; getAns(n); } static void getAns(int n) { Console.WriteLine(n*4); var p1 = new List

(); for (int i = n ; i >= 1; i--) { p1.Add(new P { x = i, y = n - i }); p1.Add(new P { x = i - n, y = i }); } p1 = p1.OrderByDescending(z => z.x).ToList(); var p2 = new List

(); for (int i = 0; i < 2 * n; i++) { p2.Add(new P { x = -p1[i].x, y = -p1[i].y }); } var sb = new StringBuilder(); foreach (var x in p1) sb.Append(string.Format("{0} {1}\n", x.x, x.y)); foreach (var x in p1) sb.Append(string.Format("{0} {1}\n", x.x, x.y)); Console.Write(sb); } }