{"task": {"agent_timeout": 600, "task": "223", "verifier_timeout": 7200, "instruction": "Please implement a Python 3 solution to the below problem.\nReason through the problem and:\n1. Restate the problem in plain English\n2. Conceptualize a solution first in plain English\n3. Write a pseudocode solution\n4. Save your solution as solution.py\nNo outside libraries are allowed.\n\n[BEGIN PROBLEM]\nProblem 1: Mirrors [Brian Dean and Travis Hance, 2013]\n\nFarmer John's cows have been causing too much trouble around the farm, and\nFJ therefore wants to keep a more watchful eye on them.  By installing N\nreflective fences (1 <= N <= 200) at various locations on the farm, he\nhopes to be able to see from his house at location (0,0) to the barn at\nlocation (a,b).\n\nOn a 2D map of FJ's farm, fence i appears as a short line segment centered\nat integer location (x_i, y_i) and tilted 45 degrees (either like '/' or\nlike '\\').  For example, a fence oriented like '/' at position (3,5) could\nbe described as a line segment from (2.9,4.9) to (3.1,5.1).  Each fence\n(and also the location of the barn) lies at a different position with\ninteger coordinates in the range -1,000,000...1,000,000.  No fence lies at\n(0,0) or (a,b).\n\nFJ plans to sit at his house at position (0,0) and look directly to the\nright (in the +x direction).  With his gaze bouncing off some of the\nreflective fences on his farm, he hopes to be able to see the point (a,b). \nUnfortunately, FJ thinks he oriented one of his fences incorrectly (e.g.,\n'\\' instead of '/').  Please output the index of the first fence in FJ's\nlist such that by toggling its direction (between '/' and '\\' or vice\nversa), FJ will be able to see the point (a,b).  \n\nIf FJ can already see the point (a,b) without toggling any fence, please\noutput 0.  If it is still impossible for him to see (a,b) even after\ntoggling up to a single fence, output -1.\n\nPROBLEM NAME: mirrors\n\nINPUT FORMAT:\n\n* Line 1: Three space-separated integers, N, a, and b.\n\n* Lines 2..1+N: Line i+1 describes fence i and contains either \"x_i\n        y_i /\" or \"x_i y_i \\\", where (x_i, y_i) is the location of the\n        center of the fence, and \\ or / refers to its orientation.\n\nSAMPLE INPUT:\n\n5 6 2\n3 0 /\n0 2 /\n1 2 /\n3 2 \\\n1 3 \\\n\nINPUT DETAILS:\n\nA map of the farm looks like this (with H denoting FJ's house and B\ndenoting the barn):\n3 .\\.....\n2 //.\\..B\n1 .......\n0 H../...\n  0123456\n\nOUTPUT FORMAT:\n\n* Line 1: The index of the first fence for which toggling that fence\n        allows FJ to see the point (a,b).  If FJ can already see the\n        point (a,b), please output 0, or if there is no way he can see\n        (a,b) even after toggling up to one fence, please output -1.\n\nSAMPLE OUTPUT:\n\n4\n\nOUTPUT DETAILS:\n\nBy toggling the fence at position (3,2), FJ can see the point (a,b).  On\nthe map:\n3 .\\.....\n2 //./--B\n1 ...|...\n0 H--/...\n  0123456\n\n[END PROBLEM]\n", "memory": "2048m", "runnable": false, "difficulty": "medium", "language": "", "cpus": 1, "instruction_truncated": false, "category": "python_programming", "compose": false, "has_solution": true, "oracle": null, "docker_image": "", "taskset": "usaco", "tags": ["python", "programming", "usaco"]}, "runs": []}