{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-07-05T00:54:32.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":"2026-07-05T00: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":1672,"title":"Leftovers?  Again?!","description":"I am thinking of a positive number X.  To determine what number I am thinking of, I will give you two 1xN vectors.  The first vector (V1) is several numbers, none of which will share a factor.  The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria.  For example:\r\n\r\nV1 = [2 3] ; V2 = [1 2]\r\n\r\nwould give an X value of 5.  There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: normal; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"display: block; min-width: 0px; padding-top: 0px; transform-origin: 332px 82.5px; vertical-align: baseline; perspective-origin: 332px 82.5px; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 42px; white-space: pre-wrap; perspective-origin: 309px 42px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eI am thinking of a positive number X. To determine what number I am thinking of, I will give you two 1xN vectors. The first vector (V1) is several numbers, none of which will share a factor. The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria. For example:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; perspective-origin: 309px 10.5px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eV1 = [2 3] ; V2 = [1 2]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; perspective-origin: 309px 21px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003ewould give an X value of 5. There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function X = leftovers(n,a)\r\n X = pi;\r\nend","test_suite":"%!cp leftovers.m safe\r\n%!rm *.*\r\n%!mv safe leftovers.m\r\n%!rm @*\r\n\r\n% Clean user's function from some known jailbreaking mechanisms\r\nfid = fopen('leftovers.m');\r\nst = regexprep(char(fread(fid)'), '!', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'feval', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'str2func', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'regex', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'system', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'dos', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'unix', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'perl', 'error(''No external languages commands!''); %');\r\nst = regexprep(st, 'java', 'error(''No external languages commands!''); %');\r\nst = regexprep(st, 'assert', 'error(''No overwriting!''); %');\r\nfclose(fid)\r\n\r\nfid = fopen('leftovers.m' , 'w');\r\nfwrite(fid,st);\r\nfclose(fid)\r\n%%\r\nV1 = [2 3] ; V2 = [1 2];; y_correct = 5; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[3 5 7] ; V2=[1 2 3]; y_correct = 52; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[3 4 5] ; V2=[2 3 1]; y_correct = 11; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[4 9 25] ; V2=[3 2 7]; y_correct = 407; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[9 10 77] ; V2=[1 2 69]; y_correct = 6922; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\na=primes(30);\r\nb=ceil(8*rand()+2)\r\nV1=a(1:b);V2=1:b;\r\ny_correct=[23 53 1523 29243 299513 4383593 188677703 5765999453];\r\nassert(isequal(leftovers(V1,V2),y_correct(b-2)))\r\n%%\r\nV1=[leftovers([6 35],[3 9]) leftovers([3 5 7],[1 3 1])];\r\nassert(isequal(leftovers(V1,V1-8),379))\r\n%%\r\n% Discourage the for x=1:inf loops\r\nV1=[74 93 145 161 209 221]; V2=[66 85 137 153 201 213];\r\ny_correct=7420738134802;\r\nassert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\n% Discourage the for x=1:inf loops\r\nV1=[17 82 111 155 203 247 253] ; V2=[11 50 68 95 124 150 154];\r\ny_correct=59652745309190;\r\nassert(isequal(leftovers(V1,V2),y_correct))\r\n","published":true,"deleted":false,"likes_count":4,"comments_count":10,"created_by":1615,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":32,"test_suite_updated_at":"2020-09-29T13:24:49.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2013-06-21T18:45:36.000Z","updated_at":"2025-11-22T17:35:45.000Z","published_at":"2013-06-21T18:45:36.000Z","restored_at":null,"restored_by":null,"spam":false,"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\u003eI am thinking of a positive number X. To determine what number I am thinking of, I will give you two 1xN vectors. The first vector (V1) is several numbers, none of which will share a factor. The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria. For example:\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\u003eV1 = [2 3] ; V2 = [1 2]\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\u003ewould give an X value of 5. There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"problem_search":{"problems":[{"id":1672,"title":"Leftovers?  Again?!","description":"I am thinking of a positive number X.  To determine what number I am thinking of, I will give you two 1xN vectors.  The first vector (V1) is several numbers, none of which will share a factor.  The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria.  For example:\r\n\r\nV1 = [2 3] ; V2 = [1 2]\r\n\r\nwould give an X value of 5.  There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.","description_html":"\u003cdiv style = \"text-align: start; line-height: 20px; min-height: 0px; white-space: normal; color: rgb(0, 0, 0); font-family: Menlo, Monaco, Consolas, monospace; font-style: normal; font-size: 14px; font-weight: normal; text-decoration: none; white-space: normal; \"\u003e\u003cdiv style=\"display: block; min-width: 0px; padding-top: 0px; transform-origin: 332px 82.5px; vertical-align: baseline; perspective-origin: 332px 82.5px; \"\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 42px; white-space: pre-wrap; perspective-origin: 309px 42px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eI am thinking of a positive number X. To determine what number I am thinking of, I will give you two 1xN vectors. The first vector (V1) is several numbers, none of which will share a factor. The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria. For example:\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 10.5px; white-space: pre-wrap; perspective-origin: 309px 10.5px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003eV1 = [2 3] ; V2 = [1 2]\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003cdiv style=\"font-family: Helvetica, Arial, sans-serif; line-height: 21px; margin-bottom: 9px; margin-left: 4px; margin-right: 10px; margin-top: 2px; text-align: left; transform-origin: 309px 21px; white-space: pre-wrap; perspective-origin: 309px 21px; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\u003e\u003cspan style=\"display: inline; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; transform-origin: 0px 0px; perspective-origin: 0px 0px; \"\u003e\u003cspan style=\"\"\u003ewould give an X value of 5. There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.\u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function X = leftovers(n,a)\r\n X = pi;\r\nend","test_suite":"%!cp leftovers.m safe\r\n%!rm *.*\r\n%!mv safe leftovers.m\r\n%!rm @*\r\n\r\n% Clean user's function from some known jailbreaking mechanisms\r\nfid = fopen('leftovers.m');\r\nst = regexprep(char(fread(fid)'), '!', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'feval', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'str2func', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'regex', 'error(''No fancy functions!''); %');\r\nst = regexprep(st, 'system', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'dos', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'unix', 'error(''No shell commands!''); %');\r\nst = regexprep(st, 'perl', 'error(''No external languages commands!''); %');\r\nst = regexprep(st, 'java', 'error(''No external languages commands!''); %');\r\nst = regexprep(st, 'assert', 'error(''No overwriting!''); %');\r\nfclose(fid)\r\n\r\nfid = fopen('leftovers.m' , 'w');\r\nfwrite(fid,st);\r\nfclose(fid)\r\n%%\r\nV1 = [2 3] ; V2 = [1 2];; y_correct = 5; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[3 5 7] ; V2=[1 2 3]; y_correct = 52; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[3 4 5] ; V2=[2 3 1]; y_correct = 11; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[4 9 25] ; V2=[3 2 7]; y_correct = 407; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\nV1=[9 10 77] ; V2=[1 2 69]; y_correct = 6922; assert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\na=primes(30);\r\nb=ceil(8*rand()+2)\r\nV1=a(1:b);V2=1:b;\r\ny_correct=[23 53 1523 29243 299513 4383593 188677703 5765999453];\r\nassert(isequal(leftovers(V1,V2),y_correct(b-2)))\r\n%%\r\nV1=[leftovers([6 35],[3 9]) leftovers([3 5 7],[1 3 1])];\r\nassert(isequal(leftovers(V1,V1-8),379))\r\n%%\r\n% Discourage the for x=1:inf loops\r\nV1=[74 93 145 161 209 221]; V2=[66 85 137 153 201 213];\r\ny_correct=7420738134802;\r\nassert(isequal(leftovers(V1,V2),y_correct))\r\n%%\r\n% Discourage the for x=1:inf loops\r\nV1=[17 82 111 155 203 247 253] ; V2=[11 50 68 95 124 150 154];\r\ny_correct=59652745309190;\r\nassert(isequal(leftovers(V1,V2),y_correct))\r\n","published":true,"deleted":false,"likes_count":4,"comments_count":10,"created_by":1615,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":32,"test_suite_updated_at":"2020-09-29T13:24:49.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2013-06-21T18:45:36.000Z","updated_at":"2025-11-22T17:35:45.000Z","published_at":"2013-06-21T18:45:36.000Z","restored_at":null,"restored_by":null,"spam":false,"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\u003eI am thinking of a positive number X. To determine what number I am thinking of, I will give you two 1xN vectors. The first vector (V1) is several numbers, none of which will share a factor. The second vector (V2) is the remainder of X when divided by each of the numbers in V1. Calculate what the lowest possible value of X can be given these criteria. For example:\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\u003eV1 = [2 3] ; V2 = [1 2]\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\u003ewould give an X value of 5. There are an infinite number of other values of X that would satisfy V1 and V2, but I want the lowest one.\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003c/w:body\u003e\u003c/w:document\u003e\",\"relationship\":null}],\"relationships\":[{\"relationshipType\":\"http://schemas.mathworks.com/matlab/code/2013/relationships/document\",\"target\":\"/matlab/document.xml\",\"relationshipId\":\"rId1\"}]}"}],"errors":[],"facets":[[{"value":"Magic Numbers III","count":1,"selected":false},{"value":"The Prime Directive","count":1,"selected":false}],[{"value":"medium","count":1,"selected":false}]],"term":"tag:\"leftovers\"","page":1,"per_page":50,"sort":"map(difficulty_value,0,0,999) asc"}}