{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2025-12-14T01:33:56.000Z","description":"Problems submitted by members of the MATLAB Central community.","is_default":true,"created_by":161519,"badge_id":null,"featured":false,"trending":false,"solution_count_in_trending_period":0,"trending_last_calculated":"2025-12-14T00:00:00.000Z","image_id":null,"published":true,"community_created":false,"status_id":2,"is_default_group_for_player":false,"deleted_by":null,"deleted_at":null,"restored_by":null,"restored_at":null,"description_opc":null,"description_html":null,"published_at":null},"problems":[{"id":61165,"title":"Breaking straight lines","description":"Let P be a point in Oxy plane and let p be a 1×2 array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\r\nBreak the given line by building a piecewise linear function constituted by two branches:\r\none branch stands for the parent polynomial p;\r\nand another branch stands for the perpendicular line, r, to p that passes by the point P (see figure below).\r\nGiven (P, p), find\r\nR, the breaking point;\r\nr, the 1×2 array that represents the perpendicular line. If r violates the definition of a function, return r = ''.\r\ninput: (P, p)\r\noutput: (R, r)\r\n","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 508.55px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 408px 254.275px; transform-origin: 408px 254.275px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eLet \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eP\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e be a point in \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eOxy\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e plane and let \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e be a \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e1\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e×\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e2\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eBreak the given line by building a piecewise linear function constituted by two branches:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cul style=\"block-size: 40.875px; font-family: Helvetica, Arial, sans-serif; list-style-type: square; margin-block-end: 20px; margin-block-start: 10px; margin-bottom: 20px; margin-top: 10px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 391px 20.4375px; transform-origin: 391px 20.4375px; margin-top: 10px; margin-bottom: 20px; \"\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eone branch stands for the parent polynomial \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eand another branch stands for the perpendicular line, \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e, to \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e that passes by the point \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eP \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e(see figure below).\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ul\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(P, p)\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e, find\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cul style=\"block-size: 40.875px; font-family: Helvetica, Arial, sans-serif; list-style-type: square; margin-block-end: 20px; margin-block-start: 10px; margin-bottom: 20px; margin-top: 10px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 391px 20.4375px; transform-origin: 391px 20.4375px; margin-top: 10px; margin-bottom: 20px; \"\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eR,\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e the breaking point;\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er,\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e the \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e1\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e×\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e2\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e array that represents the perpendicular line. If \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e violates the definition of a function, return \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er = ''\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ul\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-family: Menlo, Monaco, Consolas, \u0026quot;Courier New\u0026quot;, monospace; \"\u003einput: \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(P, p)\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-family: Menlo, Monaco, Consolas, \u0026quot;Courier New\u0026quot;, monospace; \"\u003eoutput: \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(R, r)\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 213.8px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 106.9px; text-align: left; transform-origin: 384px 106.9px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cimg class=\"imageNode\" width=\"251\" height=\"208\" style=\"vertical-align: baseline;width: 251px;height: 208px\" src=\"data:image/png;base64,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\" alt=\"Break line\" data-image-state=\"image-loaded\"\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [R, r] = breaking(P,p)\r\n  R = x;\r\n  r = x;\r\nend","test_suite":"%%\r\nP = [1 1];\r\np = [2 1];\r\nR_correct = [0.2 1.4];\r\nr_correct = [-0.5 1.5];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.5 1];\r\nR_correct = [0.8 0.6];\r\nr_correct = [2 -1];\r\n[R, r] = breaking(P,p);\r\nassert(all(isapprox(R,R_correct), 'all'))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.5 1.5];\r\nR_correct = [1 1];\r\nr_correct = [2 -1];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [1 -1];\r\nR_correct = [1.5 0.5];\r\nr_correct = [-1 2];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nfiletext = fileread('breaking.m');\r\nillegal = contains(filetext, 'assignin') || contains(filetext, 'regexp') || ...\r\n          contains(filetext, 'str2num'); \r\nassert(~illegal)\r\n\r\n%%\r\nP = [1 1];\r\np = [0 2];\r\nR_correct = [1 2];\r\nr_correct = '';\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.2 2];  \r\nR_correct = [15/13 23/13];\r\nr_correct = [5 -4];\r\n[R, r] = breaking(P,p);\r\nassert(all(isapprox(R,R_correct), 'all'))\r\nassert(isequal(r,r_correct))\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":4,"created_by":4993982,"edited_by":4993982,"edited_at":"2026-01-29T17:18:34.000Z","deleted_by":null,"deleted_at":null,"solvers_count":9,"test_suite_updated_at":"2026-01-29T17:18:34.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2026-01-15T15:30:33.000Z","updated_at":"2026-03-31T17:02:16.000Z","published_at":"2026-01-26T14:18:09.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eLet \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eP\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e be a point in \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOxy\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e plane and let \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e be a \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e1\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e×\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eBreak the given line by building a piecewise linear function constituted by two branches:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eone branch stands for the parent polynomial \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eand another branch stands for the perpendicular line, \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, to \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e that passes by the point \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eP \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e(see figure below).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(P, p)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, find\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eR,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e the breaking point;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e the \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e1\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e×\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e array that represents the perpendicular line. If \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e violates the definition of a function, return \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er = ''\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003einput: \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(P, p)\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eoutput: \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(R, r)\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"208\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"251\\\"/\u003e\u003cw:attr w:name=\\\"verticalAlign\\\" w:val=\\\"baseline\\\"/\u003e\u003cw:attr w:name=\\\"altText\\\" w:val=\\\"Break line\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"target\":\"/media/image1.png\",\"relationshipId\":\"rId1\"}]},{\"partUri\":\"/media/image1.png\",\"contentType\":\"image/png\",\"content\":\"data:image/png;base64,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\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":42755,"title":"Angle bisectors","description":"Given 2 direction vectors, calculate the *_two_ (2) normalized angle bisectors* (which are perpendicular between them).\r\n\r\nInput vectors can be 2-D or 3-D.\r\n\r\nThe two output vectors must have a norm equal to 1 (unit vectors).\r\n\r\nYou may find some help here:\r\n\u003chttps://proofwiki.org/wiki/Angle_Bisector_Vector\u003e","description_html":"\u003cp\u003eGiven 2 direction vectors, calculate the \u003cb\u003e\u003ci\u003etwo\u003c/i\u003e (2) normalized angle bisectors\u003c/b\u003e (which are perpendicular between them).\u003c/p\u003e\u003cp\u003eInput vectors can be 2-D or 3-D.\u003c/p\u003e\u003cp\u003eThe two output vectors must have a norm equal to 1 (unit vectors).\u003c/p\u003e\u003cp\u003eYou may find some help here: \u003ca href = \"https://proofwiki.org/wiki/Angle_Bisector_Vector\"\u003ehttps://proofwiki.org/wiki/Angle_Bisector_Vector\u003c/a\u003e\u003c/p\u003e","function_template":"function [b1,b2] = bisectors(v1,v2)\r\n  b1 = cross(v1,v2);\r\n  b2 = cross(v1,-v2);\r\nend","test_suite":"%%\r\nv1 = [1 0];\r\nv2 = [0 1];\r\n[b1,b2] = bisectors(v1,v2);\r\n\r\nb1ok = [1 1]/sqrt(2);\r\nb2ok = [-1 1]/sqrt(2);\r\n\r\n% Tests performed\r\nt1 = (abs(norm(b1)-1)\u003c1e-6); % Unit b1\r\nt2 = (abs(norm(b2)-1)\u003c1e-6); % Unit b2\r\nt3 = (abs(b1*b2') \u003c 1e-12); % b1 and b2 are perpendicular\r\nt4 = (abs(sum((b1-b1ok)))\u003c1e-12);  % b1 is equal to [1/sqrt(2) 1/sqrt(2)]\r\nt5 = (abs(sum((b1+b1ok)))\u003c1e-12); % or its opposite\r\nt6 = (abs(sum((b2-b2ok)))\u003c1e-12); % b2 is equal to [1/sqrt(2) -1/sqrt(2)]\r\nt7 = (abs(sum((b2+b2ok)))\u003c1e-12); % or its opposite\r\ntest = (t1 \u0026\u0026 t2 \u0026\u0026 t3 \u0026\u0026 xor(t4,t5) \u0026\u0026 xor(t6,t7));\r\n\r\n%%\r\nv1 = [4 0 3];\r\nv2 = [-2 2 1];\r\n[b1,b2] = bisectors(v1,v2);\r\n\r\nb1ok=[0.2 1 1.4]/sqrt(3);\r\nb2ok=[2.2 -1 0.4]/sqrt(6);\r\n  \r\n% Tests performed\r\nt1 = (abs(norm(b1)-1)\u003c1e-6); % Unit b1\r\nt2 = (abs(norm(b2)-1)\u003c1e-6); % Unit b2\r\nt3 = (abs(b1*b2') \u003c 1e-12); % b1 and b2 are perpendicular\r\nt4 = (abs(sum((b1-b1ok)))\u003c1e-12);  % b1 is equal to [1/sqrt(2) 1/sqrt(2)]\r\nt5 = (abs(sum((b1+b1ok)))\u003c1e-12); % or its opposite\r\nt6 = (abs(sum((b2-b2ok)))\u003c1e-12); % b2 is equal to [1/sqrt(2) -1/sqrt(2)]\r\nt7 = (abs(sum((b2+b2ok)))\u003c1e-12); % or its opposite\r\nassert(t1 \u0026\u0026 t2 \u0026\u0026 t3 \u0026\u0026 xor(t4,t5) \u0026\u0026 xor(t6,t7));\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":12767,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":35,"test_suite_updated_at":"2016-04-27T12:55:46.000Z","rescore_all_solutions":false,"group_id":37,"created_at":"2016-02-25T17:55:08.000Z","updated_at":"2026-02-27T10:16:23.000Z","published_at":"2016-02-25T17:57:35.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven 2 direction vectors, calculate the\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003etwo\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e (2) normalized angle bisectors\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e (which are perpendicular between them).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput vectors can be 2-D or 3-D.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe two output vectors must have a norm equal to 1 (unit vectors).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYou may find some help here:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://proofwiki.org/wiki/Angle_Bisector_Vector\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e\u0026lt;https://proofwiki.org/wiki/Angle_Bisector_Vector\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e\u0026gt;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"problem_search":{"errors":[],"problems":[{"id":61165,"title":"Breaking straight lines","description":"Let P be a point in Oxy plane and let p be a 1×2 array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\r\nBreak the given line by building a piecewise linear function constituted by two branches:\r\none branch stands for the parent polynomial p;\r\nand another branch stands for the perpendicular line, r, to p that passes by the point P (see figure below).\r\nGiven (P, p), find\r\nR, the breaking point;\r\nr, the 1×2 array that represents the perpendicular line. If r violates the definition of a function, return r = ''.\r\ninput: (P, p)\r\noutput: (R, r)\r\n","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.44px; min-height: 0px; white-space: normal; color: rgb(33, 33, 33); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: 400; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"block-size: 508.55px; display: block; min-width: 0px; padding-block-start: 0px; padding-inline-start: 2px; padding-left: 2px; padding-top: 0px; perspective-origin: 408px 254.275px; transform-origin: 408px 254.275px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 42px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eLet \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eP\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e be a point in \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eOxy\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e plane and let \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e be a \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e1\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e×\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e2\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eBreak the given line by building a piecewise linear function constituted by two branches:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cul style=\"block-size: 40.875px; font-family: Helvetica, Arial, sans-serif; list-style-type: square; margin-block-end: 20px; margin-block-start: 10px; margin-bottom: 20px; margin-top: 10px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 391px 20.4375px; transform-origin: 391px 20.4375px; margin-top: 10px; margin-bottom: 20px; \"\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eone branch stands for the parent polynomial \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e;\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eand another branch stands for the perpendicular line, \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e, to \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003ep\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e that passes by the point \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eP \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e(see figure below).\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ul\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eGiven \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(P, p)\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e, find\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cul style=\"block-size: 40.875px; font-family: Helvetica, Arial, sans-serif; list-style-type: square; margin-block-end: 20px; margin-block-start: 10px; margin-bottom: 20px; margin-top: 10px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 391px 20.4375px; transform-origin: 391px 20.4375px; margin-top: 10px; margin-bottom: 20px; \"\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003eR,\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e the breaking point;\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003cli style=\"block-size: 20.4375px; display: list-item; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-start: 56px; margin-left: 56px; margin-top: 0px; perspective-origin: 363px 10.2125px; text-align: left; transform-origin: 363px 10.2188px; white-space-collapse: preserve; margin-left: 56px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er,\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e the \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e1\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e×\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e2\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e array that represents the perpendicular line. If \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e violates the definition of a function, return \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003er = ''\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-inline-start: 0px; margin-left: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e.\u003c/span\u003e\u003c/span\u003e\u003c/li\u003e\u003c/ul\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-family: Menlo, Monaco, Consolas, \u0026quot;Courier New\u0026quot;, monospace; \"\u003einput: \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(P, p)\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 21px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 10.5px; text-align: left; transform-origin: 384px 10.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-family: Menlo, Monaco, Consolas, \u0026quot;Courier New\u0026quot;, monospace; \"\u003eoutput: \u003c/span\u003e\u003c/span\u003e\u003cspan style=\"block-size: auto; display: inline; margin-block-end: 0px; margin-block-start: 0px; margin-bottom: 0px; margin-inline-end: 0px; margin-inline-start: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; perspective-origin: 0px 0px; transform-origin: 0px 0px; unicode-bidi: normal; \"\u003e\u003cspan style=\"font-style: italic; \"\u003e(R, r)\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"block-size: 213.8px; font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-block-end: 9px; margin-block-start: 2px; margin-bottom: 9px; margin-inline-end: 10px; margin-inline-start: 4px; margin-left: 4px; margin-right: 10px; margin-top: 2px; padding-inline-start: 0px; padding-left: 0px; perspective-origin: 384px 106.9px; text-align: left; transform-origin: 384px 106.9px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; \"\u003e\u003cimg class=\"imageNode\" width=\"251\" height=\"208\" style=\"vertical-align: baseline;width: 251px;height: 208px\" src=\"data:image/png;base64,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\" alt=\"Break line\" data-image-state=\"image-loaded\"\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function [R, r] = breaking(P,p)\r\n  R = x;\r\n  r = x;\r\nend","test_suite":"%%\r\nP = [1 1];\r\np = [2 1];\r\nR_correct = [0.2 1.4];\r\nr_correct = [-0.5 1.5];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.5 1];\r\nR_correct = [0.8 0.6];\r\nr_correct = [2 -1];\r\n[R, r] = breaking(P,p);\r\nassert(all(isapprox(R,R_correct), 'all'))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.5 1.5];\r\nR_correct = [1 1];\r\nr_correct = [2 -1];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [1 -1];\r\nR_correct = [1.5 0.5];\r\nr_correct = [-1 2];\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nfiletext = fileread('breaking.m');\r\nillegal = contains(filetext, 'assignin') || contains(filetext, 'regexp') || ...\r\n          contains(filetext, 'str2num'); \r\nassert(~illegal)\r\n\r\n%%\r\nP = [1 1];\r\np = [0 2];\r\nR_correct = [1 2];\r\nr_correct = '';\r\n[R, r] = breaking(P,p);\r\nassert(isequal(R,R_correct))\r\nassert(isequal(r,r_correct))\r\n\r\n%%\r\nP = [1 1];\r\np = [-0.2 2];  \r\nR_correct = [15/13 23/13];\r\nr_correct = [5 -4];\r\n[R, r] = breaking(P,p);\r\nassert(all(isapprox(R,R_correct), 'all'))\r\nassert(isequal(r,r_correct))\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":4,"created_by":4993982,"edited_by":4993982,"edited_at":"2026-01-29T17:18:34.000Z","deleted_by":null,"deleted_at":null,"solvers_count":9,"test_suite_updated_at":"2026-01-29T17:18:34.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2026-01-15T15:30:33.000Z","updated_at":"2026-03-31T17:02:16.000Z","published_at":"2026-01-26T14:18:09.000Z","restored_at":null,"restored_by":null,"spam":null,"simulink":false,"admin_reviewed":false,"description_opc":"{\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eLet \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eP\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e be a point in \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOxy\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e plane and let \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e be a \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e1\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e×\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e array representing an one-degree or zero-degree polynomials, if its first entry is a non-zero constant or a zero constant, respectively.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eBreak the given line by building a piecewise linear function constituted by two branches:\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eone branch stands for the parent polynomial \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eand another branch stands for the perpendicular line, \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, to \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003ep\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e that passes by the point \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eP \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e(see figure below).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(P, p)\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e, find\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eR,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e the breaking point;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"ListParagraph\\\"/\u003e\u003cw:numPr\u003e\u003cw:numId w:val=\\\"1\\\"/\u003e\u003c/w:numPr\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er,\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e the \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e1\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e×\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e2\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e array that represents the perpendicular line. If \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e violates the definition of a function, return \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003er = ''\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003einput: \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(P, p)\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:rFonts w:cs=\\\"monospace\\\"/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eoutput: \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e(R, r)\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003cw:jc w:val=\\\"left\\\"/\u003e\u003c/w:pPr\u003e\u003cw:customXml w:element=\\\"image\\\"\u003e\u003cw:customXmlPr\u003e\u003cw:attr w:name=\\\"height\\\" w:val=\\\"208\\\"/\u003e\u003cw:attr w:name=\\\"width\\\" w:val=\\\"251\\\"/\u003e\u003cw:attr w:name=\\\"verticalAlign\\\" w:val=\\\"baseline\\\"/\u003e\u003cw:attr w:name=\\\"altText\\\" w:val=\\\"Break line\\\"/\u003e\u003cw:attr w:name=\\\"relationshipId\\\" w:val=\\\"rId1\\\"/\u003e\u003c/w:customXmlPr\u003e\u003c/w:customXml\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/image\",\"target\":\"/media/image1.png\",\"relationshipId\":\"rId1\"}]},{\"partUri\":\"/media/image1.png\",\"contentType\":\"image/png\",\"content\":\"data:image/png;base64,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\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"},{"id":42755,"title":"Angle bisectors","description":"Given 2 direction vectors, calculate the *_two_ (2) normalized angle bisectors* (which are perpendicular between them).\r\n\r\nInput vectors can be 2-D or 3-D.\r\n\r\nThe two output vectors must have a norm equal to 1 (unit vectors).\r\n\r\nYou may find some help here:\r\n\u003chttps://proofwiki.org/wiki/Angle_Bisector_Vector\u003e","description_html":"\u003cp\u003eGiven 2 direction vectors, calculate the \u003cb\u003e\u003ci\u003etwo\u003c/i\u003e (2) normalized angle bisectors\u003c/b\u003e (which are perpendicular between them).\u003c/p\u003e\u003cp\u003eInput vectors can be 2-D or 3-D.\u003c/p\u003e\u003cp\u003eThe two output vectors must have a norm equal to 1 (unit vectors).\u003c/p\u003e\u003cp\u003eYou may find some help here: \u003ca href = \"https://proofwiki.org/wiki/Angle_Bisector_Vector\"\u003ehttps://proofwiki.org/wiki/Angle_Bisector_Vector\u003c/a\u003e\u003c/p\u003e","function_template":"function [b1,b2] = bisectors(v1,v2)\r\n  b1 = cross(v1,v2);\r\n  b2 = cross(v1,-v2);\r\nend","test_suite":"%%\r\nv1 = [1 0];\r\nv2 = [0 1];\r\n[b1,b2] = bisectors(v1,v2);\r\n\r\nb1ok = [1 1]/sqrt(2);\r\nb2ok = [-1 1]/sqrt(2);\r\n\r\n% Tests performed\r\nt1 = (abs(norm(b1)-1)\u003c1e-6); % Unit b1\r\nt2 = (abs(norm(b2)-1)\u003c1e-6); % Unit b2\r\nt3 = (abs(b1*b2') \u003c 1e-12); % b1 and b2 are perpendicular\r\nt4 = (abs(sum((b1-b1ok)))\u003c1e-12);  % b1 is equal to [1/sqrt(2) 1/sqrt(2)]\r\nt5 = (abs(sum((b1+b1ok)))\u003c1e-12); % or its opposite\r\nt6 = (abs(sum((b2-b2ok)))\u003c1e-12); % b2 is equal to [1/sqrt(2) -1/sqrt(2)]\r\nt7 = (abs(sum((b2+b2ok)))\u003c1e-12); % or its opposite\r\ntest = (t1 \u0026\u0026 t2 \u0026\u0026 t3 \u0026\u0026 xor(t4,t5) \u0026\u0026 xor(t6,t7));\r\n\r\n%%\r\nv1 = [4 0 3];\r\nv2 = [-2 2 1];\r\n[b1,b2] = bisectors(v1,v2);\r\n\r\nb1ok=[0.2 1 1.4]/sqrt(3);\r\nb2ok=[2.2 -1 0.4]/sqrt(6);\r\n  \r\n% Tests performed\r\nt1 = (abs(norm(b1)-1)\u003c1e-6); % Unit b1\r\nt2 = (abs(norm(b2)-1)\u003c1e-6); % Unit b2\r\nt3 = (abs(b1*b2') \u003c 1e-12); % b1 and b2 are perpendicular\r\nt4 = (abs(sum((b1-b1ok)))\u003c1e-12);  % b1 is equal to [1/sqrt(2) 1/sqrt(2)]\r\nt5 = (abs(sum((b1+b1ok)))\u003c1e-12); % or its opposite\r\nt6 = (abs(sum((b2-b2ok)))\u003c1e-12); % b2 is equal to [1/sqrt(2) -1/sqrt(2)]\r\nt7 = (abs(sum((b2+b2ok)))\u003c1e-12); % or its opposite\r\nassert(t1 \u0026\u0026 t2 \u0026\u0026 t3 \u0026\u0026 xor(t4,t5) \u0026\u0026 xor(t6,t7));\r\n","published":true,"deleted":false,"likes_count":2,"comments_count":0,"created_by":12767,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":35,"test_suite_updated_at":"2016-04-27T12:55:46.000Z","rescore_all_solutions":false,"group_id":37,"created_at":"2016-02-25T17:55:08.000Z","updated_at":"2026-02-27T10:16:23.000Z","published_at":"2016-02-25T17:57:35.000Z","restored_at":null,"restored_by":null,"spam":false,"simulink":false,"admin_reviewed":false,"description_opc":"{\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"targetMode\":\"\",\"relationshipId\":\"rId1\",\"target\":\"/matlab/document.xml\"},{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/output\",\"targetMode\":\"\",\"relationshipId\":\"rId2\",\"target\":\"/matlab/output.xml\"}],\"parts\":[{\"partUri\":\"/matlab/document.xml\",\"relationship\":[],\"contentType\":\"application/vnd.mathworks.matlab.code.document+xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?\u003e\\n\u003cw:document xmlns:w=\\\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\\\"\u003e\u003cw:body\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eGiven 2 direction vectors, calculate the\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003cw:i/\u003e\u003c/w:rPr\u003e\u003cw:t\u003etwo\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003e (2) normalized angle bisectors\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e (which are perpendicular between them).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eInput vectors can be 2-D or 3-D.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThe two output vectors must have a norm equal to 1 (unit vectors).\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"text\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eYou may find some help here:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://proofwiki.org/wiki/Angle_Bisector_Vector\\\"\u003e\u003cw:r\u003e\u003cw:t\u003e\u0026lt;https://proofwiki.org/wiki/Angle_Bisector_Vector\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e\u0026gt;\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\"},{\"partUri\":\"/matlab/output.xml\",\"contentType\":\"text/xml\",\"content\":\"\u003c?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\" standalone=\\\"no\\\" ?\u003e\u003cembeddedOutputs\u003e\u003cmetaData\u003e\u003cevaluationState\u003emanual\u003c/evaluationState\u003e\u003clayoutState\u003ecode\u003c/layoutState\u003e\u003coutputStatus\u003eready\u003c/outputStatus\u003e\u003c/metaData\u003e\u003coutputArray type=\\\"array\\\"/\u003e\u003cregionArray type=\\\"array\\\"/\u003e\u003c/embeddedOutputs\u003e\"}]}"}],"term":"tag:\"perpendicular\"","current_player_id":null,"fields":[{"name":"page","type":"integer","callback":null,"default":1,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"per_page","type":"integer","callback":null,"default":50,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"sort","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":null,"prepend":true},{"name":"body","type":"text","callback":null,"default":"*:*","directive":null,"facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":false},{"name":"group","type":"string","callback":null,"default":null,"directive":"group","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"difficulty_rating_bin","type":"string","callback":null,"default":null,"directive":"difficulty_rating_bin","facet":true,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"id","type":"integer","callback":null,"default":null,"directive":"id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"tag","type":"string","callback":null,"default":null,"directive":"tag","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"product","type":"string","callback":null,"default":null,"directive":"product","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_at","type":"timeframe","callback":{},"default":null,"directive":"created_at","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"profile_id","type":"integer","callback":null,"default":null,"directive":"author_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"created_by","type":"string","callback":null,"default":null,"directive":"author","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player_id","type":"integer","callback":null,"default":null,"directive":"solver_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"player","type":"string","callback":null,"default":null,"directive":"solver","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"solvers_count","type":"integer","callback":null,"default":null,"directive":"solvers_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"comments_count","type":"integer","callback":null,"default":null,"directive":"comments_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"likes_count","type":"integer","callback":null,"default":null,"directive":"likes_count","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leader_id","type":"integer","callback":null,"default":null,"directive":"leader_id","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true},{"name":"leading_solution","type":"integer","callback":null,"default":null,"directive":"leading_solution","facet":null,"facet_method":"and","operator":null,"param":"term","static":null,"prepend":true}],"filters":[{"name":"asset_type","type":"string","callback":null,"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":null,"static":"\"cody:problem\"","prepend":true},{"name":"profile_id","type":"integer","callback":{},"default":null,"directive":null,"facet":null,"facet_method":"and","operator":null,"param":"author_id","static":null,"prepend":true}],"query":{"params":{"per_page":50,"term":"tag:\"perpendicular\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"perpendicular\"","","\"","perpendicular","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f74aa224ce8\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f74aa224c48\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f74aa2242e8\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f74aa224f68\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f74aa224ec8\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f74aa224e28\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f74aa224d88\u003e":"tag:\"perpendicular\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f74aa224d88\u003e":"tag:\"perpendicular\""},"queried_facets":{}},"query_backend":{"connection":{"configuration":{"index_url":"http://index-op-v2/solr/","query_url":"http://search-op-v2/solr/","direct_access_index_urls":["http://index-op-v2/solr/"],"direct_access_query_urls":["http://search-op-v2/solr/"],"timeout":10,"vhost":"search","exchange":"search.topic","heartbeat":30,"pre_index_mode":false,"host":"rabbitmq-eks","port":5672,"username":"search","password":"J3bGPZzQ7asjJcCk","virtual_host":"search","indexer":"amqp","http_logging":"true","core":"cody"},"query_connection":{"uri":"http://search-op-v2/solr/cody/","proxy":null,"connection":{"parallel_manager":null,"headers":{"User-Agent":"Faraday v1.0.1"},"params":{},"options":{"params_encoder":"Faraday::FlatParamsEncoder","proxy":null,"bind":null,"timeout":null,"open_timeout":null,"read_timeout":null,"write_timeout":null,"boundary":null,"oauth":null,"context":null,"on_data":null},"ssl":{"verify":true,"ca_file":null,"ca_path":null,"verify_mode":null,"cert_store":null,"client_cert":null,"client_key":null,"certificate":null,"private_key":null,"verify_depth":null,"version":null,"min_version":null,"max_version":null},"default_parallel_manager":null,"builder":{"adapter":{"name":"Faraday::Adapter::NetHttp","args":[],"block":null},"handlers":[{"name":"Faraday::Response::RaiseError","args":[],"block":null}],"app":{"app":{"ssl_cert_store":{"verify_callback":null,"error":null,"error_string":null,"chain":null,"time":null},"app":{},"connection_options":{},"config_block":null}}},"url_prefix":"http://search-op-v2/solr/cody/","manual_proxy":false,"proxy":null},"update_format":"RSolr::JSON::Generator","update_path":"update","options":{"url":"http://search-op-v2/solr/cody"}}},"query":{"params":{"per_page":50,"term":"tag:\"perpendicular\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"perpendicular\"","","\"","perpendicular","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f74aa224ce8\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f74aa224c48\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f74aa2242e8\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f74aa224f68\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f74aa224ec8\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f74aa224e28\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f74aa224d88\u003e":"tag:\"perpendicular\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f74aa224d88\u003e":"tag:\"perpendicular\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":61165,"difficulty_rating":"easy"},{"id":42755,"difficulty_rating":"easy-medium"}]}}