{"group":{"id":1,"name":"Community","lockable":false,"created_at":"2012-01-18T18:02:15.000Z","updated_at":"2026-04-16T00:12:35.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-04-16T00: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":2223,"title":"Cumulative difference","description":"Given an array, return the cumulative difference.\r\n\r\nExample\r\n\r\n a = [ 1 3 5 7 ]\r\n cumdiff = [ 1 2 1 -2 ]\r\n\r\n","description_html":"\u003cp\u003eGiven an array, return the cumulative difference.\u003c/p\u003e\u003cp\u003eExample\u003c/p\u003e\u003cpre\u003e a = [ 1 3 5 7 ]\r\n cumdiff = [ 1 2 1 -2 ]\u003c/pre\u003e","function_template":"function y = CumDiff(x)\r\n  y = x;\r\nend","test_suite":"%%\r\nx = [1 3 5 7];\r\ny_correct = [1 2 1 -2];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [23 3 15 16];\r\ny_correct = [23 -20 -11 -25];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [5];\r\ny_correct = [5];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = 43:49;\r\ny_correct = [ 43   1   -42   -86    -131   -177   -224];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = zeros(0,1);\r\ny_correct = zeros(0,1)\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [1 10 100 1000 10000];\r\ny_correct = [1 9 89 889 8889];\r\nassert(isequal(CumDiff(x),y_correct))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":16381,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":74,"test_suite_updated_at":"2014-02-26T21:46:35.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2014-02-26T21:25:13.000Z","updated_at":"2026-03-31T12:46:07.000Z","published_at":"2014-02-26T21:40:51.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 an array, return the cumulative difference.\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\u003eExample\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ a = [ 1 3 5 7 ]\\n cumdiff = [ 1 2 1 -2 ]]]\u003e\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\"}]}"},{"id":1161,"title":"Binpack Contest: Retro","description":"The \u003chttp://www.mathworks.com/matlabcentral/contest/contests/3/rules Full Binpack Rules and examples\u003e.\r\n\r\nThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\r\n\r\nBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\r\n\r\n*Input:* [songList, mediaLength]\r\n\r\n*Output:* indexList\r\n\r\n*Example:*\r\n\r\nInput:  [ 0.5 2 3 1.5 4], [5.6]\r\n\r\nOutput: [4 5]  as 1.5+4 is very near and below 5.6.\r\n\r\nThe answer of [1 2 3] is also valid and also gives 5.5.\r\n\r\n*Scoring:* 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\r\n\r\n\r\n*Warning:* Matlab 2013B may produce time slowing error messages versus 1998 code.\r\n\r\n","description_html":"\u003cp\u003eThe \u003ca href=\"http://www.mathworks.com/matlabcentral/contest/contests/3/rules\"\u003eFull Binpack Rules and examples\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\u003c/p\u003e\u003cp\u003eBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e [songList, mediaLength]\u003c/p\u003e\u003cp\u003e\u003cb\u003eOutput:\u003c/b\u003e indexList\u003c/p\u003e\u003cp\u003e\u003cb\u003eExample:\u003c/b\u003e\u003c/p\u003e\u003cp\u003eInput:  [ 0.5 2 3 1.5 4], [5.6]\u003c/p\u003e\u003cp\u003eOutput: [4 5]  as 1.5+4 is very near and below 5.6.\u003c/p\u003e\u003cp\u003eThe answer of [1 2 3] is also valid and also gives 5.5.\u003c/p\u003e\u003cp\u003e\u003cb\u003eScoring:\u003c/b\u003e 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\u003c/p\u003e\u003cp\u003e\u003cb\u003eWarning:\u003c/b\u003e Matlab 2013B may produce time slowing error messages versus 1998 code.\u003c/p\u003e","function_template":"function indexList = binpack(songList,mediaLength) ;\r\n  indexList=[];\r\nend","test_suite":"%%\r\nfeval(@assignin,'caller','score',100);\r\n%%\r\na{1} = [4.3078    2.5481    1.4903    5.4302    3.4142    2.9736    3.3768 ...\r\n        2.1612    3.3024    0.3269    2.6761    4.2530    2.6648    1.9644 ...\r\n        3.3389    22.122    4.1015    3.2104    2.3945    4.7151];\r\na{2} = [1.2671    3.1377    4.0687    4.1459    3.6469    6.1881    8.2452 ...\r\n        7.3962    9.7071   10.4798   11.4082   12.2282   12.6320   13.9705 ...\r\n        13.8851   15.6195   17.0187   18.5778   18.4140   20.0473];\r\na{3} = [1.6283    6.0703    8.1323    2.6226    3.1230    3.0081    6.1405 ...\r\n        1.1896    4.2769    5.0951    6.4869    3.9215    2.5858    4.7130 ...\r\n        4.5529];\r\na{4} = [40:-1:1]+.1;\r\na{5} = [1.0979    3.5540    1.8627    0.0849    3.2110    3.6466    4.8065 ...\r\n        3.2717    0.1336    2.5008    0.4508    3.0700    3.1658    0.8683 ...\r\n        3.5533    3.7528    2.7802    4.2016    1.6372    9.6254    1.3264 ...\r\n        0.3160    4.3212    3.0192    0.7744    2.3970    1.7416    2.4751 ...\r\n        1.0470    1.9091];\r\na{6} = [1 1 2 3 5 8 13 21 34]+.1;\r\na{7} = [0.8651    3.3312    0.2507    0.5754    2.2929    2.3818    2.3783 ...\r\n        0.0753    0.6546    0.3493    0.3734    1.4516    1.1766    4.3664 ...\r\n        0.2728    20.279    2.1335    0.1186    0.1913    1.6647    0.5888 ...\r\n        2.6724    1.4286    3.2471    1.3836    1.7160    2.5080    3.1875 ...\r\n        2.8819    1.1423    0.7998    1.3800    1.6312    1.4238    2.5805 ...\r\n        1.3372    2.3817    2.4049    0.0396    0.3134];\r\na{8} = [pi*ones(1,10) exp(1)*ones(1,10)];\r\na{9} = [1.6041    0.2573    1.0565    1.4151    0.8051    0.5287    0.2193 ...\r\n        0.9219    2.1707    0.0592    1.0106    0.6145    0.5077    1.6924 ...\r\n        0.5913    0.6436    0.3803    1.0091    0.0195    0.0482    20.000 ...\r\n        0.3179    1.0950    1.8740    0.4282    0.8956    0.7310    0.5779 ...\r\n        0.0403    0.6771    0.5689    0.2556    0.3775    0.2959    1.4751 ...\r\n        0.2340    8.1184    0.3148    1.4435    0.3510    0.6232    0.7990 ...\r\n        0.9409    0.9921    0.2120    0.2379    1.0078    0.7420    1.0823 ...\r\n        0.1315];\r\na{10}= [1.6041    0.2573    1.0565    1.4151    0.8051    0.5287    0.2193 ...\r\n        0.9219    2.1707    0.0592    1.0106    0.6145    0.5077    1.6924 ...\r\n        0.5913    0.6436    0.3803    10.091    0.0195    0.0482    20.000 ...\r\n        0.3179    1.0950    1.8740    44.999    0.8956    0.7310    0.5779 ...\r\n        0.0403    0.6771    0.5689    0.2556    0.3775    0.2959    1.4751 ...\r\n        0.2340    0.1184    0.3148    1.4435    0.3510    0.6232    0.7990 ...\r\n        0.9409    0.9921    0.2120    0.2379    1.0078    0.7420    1.0823 ...\r\n        0.1315];\r\na{11}= [40*ones(1,50) ones(1,20)]+0.05;\r\na{12}= 4.3 + sin(1:100);\r\n\r\nmediaLength=45;\r\n\r\nfor j=1:20 % warm-up\r\nfor i=1:12\r\n   songList=a{i};\r\n   indexList = binpack(songList,mediaLength) ;\r\nend\r\nend\r\n\r\n\r\nnet_gap=0;\r\nt0=clock;\r\nfor j=1:100\r\nfor i=1:12\r\n   songList=a{i};\r\n   indexList = binpack(songList,mediaLength) ;\r\n   indexList=unique(indexList); % No dupes\r\n   total(i)=sum(songList(indexList));\r\n   if total(i)\u003e45+1.5*eps(mediaLength) % Rqmt \u003c= 45\r\n    total(i)=-Inf;\r\n   end\r\n   net_gap=net_gap+45-total(i) ;\r\nend\r\nend\r\ntte=etime(clock,t0);\r\nfprintf('Total Time E %f\\n',tte)\r\nfprintf('Totals: ');fprintf('%.4f  ',total);fprintf('\\n')\r\nfprintf('Net Gap: %.2f\\n',net_gap)\r\n%format long\r\nfprintf('Performance: %.4f\\n',net_gap/(12*45))\r\nfprintf('Score=150*net_gap/(12*45)+3*time: %.3f\\n',150*net_gap/(12*45)+tte*3)\r\n\r\nScore=150*net_gap/(12*45)+tte*3;\r\n\r\nassert(Score\u003cInf)\r\n\r\n\r\nfeval( @assignin,'caller','score',floor(min( 100,Score )) );\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":5,"created_by":3097,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":13,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2013-01-02T05:26:53.000Z","updated_at":"2026-03-16T11:34:27.000Z","published_at":"2013-01-02T05:58:44.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\u003eThe\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=\\\"http://www.mathworks.com/matlabcentral/contest/contests/3/rules\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eFull Binpack Rules and examples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\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\u003eBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [songList, mediaLength]\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e indexList\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eExample:\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: [ 0.5 2 3 1.5 4], [5.6]\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\u003eOutput: [4 5] as 1.5+4 is very near and below 5.6.\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 answer of [1 2 3] is also valid and also gives 5.5.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eScoring:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eWarning:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e Matlab 2013B may produce time slowing error messages versus 1998 code.\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\"}]}"},{"id":59871,"title":"List the segmented numbers","description":"The sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \r\nWrite a function that returns the nth segmented number.\r\n--------------------\r\nI now realize that this problem is similar to Cody Problem 42832 by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. ","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; 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: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 174px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 87px; transform-origin: 407px 87px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 63px; 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; perspective-origin: 384px 31.5px; text-align: left; transform-origin: 384px 31.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\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: 361.308px 8px; transform-origin: 361.308px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eThe sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \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; 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; margin-right: 10px; \"\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: 172.95px 8px; transform-origin: 172.95px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eWrite a function that returns the nth segmented number.\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; 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; margin-right: 10px; \"\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: 46.6667px 8px; transform-origin: 46.6667px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e--------------------\u003c/span\u003e\u003c/span\u003e\u003c/div\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; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\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: 131.858px 8px; transform-origin: 131.858px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eI now realize that this problem is similar to \u003c/span\u003e\u003c/span\u003e\u003ca target='_blank' href = \"https://www.mathworks.com/matlabcentral/cody/problems/42832\"\u003e\u003cspan style=\"\"\u003e\u003cspan style=\"\"\u003eCody Problem 42832\u003c/span\u003e\u003c/span\u003e\u003c/a\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: 172.692px 8px; transform-origin: 172.692px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. \u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function y = segmentedNumbers(n)\r\n  y = 1:n-sum(1:n);\r\nend","test_suite":"%%\r\nassert(isequal(segmentedNumbers(1),1))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(2),2))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(3),4))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(10),21))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(25),50))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(59),154))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(343),991))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(815),2521))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(1663),5590))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(4521),16617))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(7532),28755))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(8000),30731))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(15532),62744))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(segmentedNumbers(7900)),127328))\r\n\r\n%%\r\nfiletext = fileread('segmentedNumbers.m');\r\nillegal = contains(filetext, 'assignin') || contains(filetext, 'assert') || contains(filetext, 'read'); \r\nassert(~illegal)\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":2,"created_by":46909,"edited_by":46909,"edited_at":"2024-04-24T01:55:04.000Z","deleted_by":null,"deleted_at":null,"solvers_count":7,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2024-04-13T14:29:06.000Z","updated_at":"2025-07-17T22:35:51.000Z","published_at":"2024-04-13T14:32:46.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\u003eThe sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \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\u003eWrite a function that returns the nth segmented number.\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\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:t\u003eI now realize that this problem is similar to \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://www.mathworks.com/matlabcentral/cody/problems/42832\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eCody Problem 42832\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. \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\"}]}"},{"id":1440,"title":"USC Spring 2013 ACM: Snow Cones","description":"This Challenge is to solve the \u003chttp://contest.usc.edu/index.php/Spring13/Home USC Spring 2013 ACM Contest\u003e Problem F, Snow Cones.\r\n\r\nSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O.\r\nInput is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child. \r\n\r\nDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\r\n\r\n\r\n*Input:* From XXO to  OXX   *Output:* 2\r\n\r\n*Input:* From OXOX to XOXO  *Output:* 1\r\n\r\nOnly two competitors solved this challenge.\r\n\r\nA little complex requiring a Matlab 3-Liner solution versus \u003chttp://contest.usc.edu/index.php/Spring13/Home?action=download\u0026upname=cones.zhengcao.cpp.txt Cao's C solution\u003e ","description_html":"\u003cp\u003eThis Challenge is to solve the \u003ca href = \"http://contest.usc.edu/index.php/Spring13/Home\"\u003eUSC Spring 2013 ACM Contest\u003c/a\u003e Problem F, Snow Cones.\u003c/p\u003e\u003cp\u003eSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O.\r\nInput is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child.\u003c/p\u003e\u003cp\u003eDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e From XXO to  OXX   \u003cb\u003eOutput:\u003c/b\u003e 2\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e From OXOX to XOXO  \u003cb\u003eOutput:\u003c/b\u003e 1\u003c/p\u003e\u003cp\u003eOnly two competitors solved this challenge.\u003c/p\u003e\u003cp\u003eA little complex requiring a Matlab 3-Liner solution versus \u003ca href = \"http://contest.usc.edu/index.php/Spring13/Home?action=download\u0026upname=cones.zhengcao.cpp.txt\"\u003eCao's C solution\u003c/a\u003e\u003c/p\u003e","function_template":"function swaps=snowcones(v1,v2)\r\n% v1 is a string of Xs and Os (not zeros)\r\n% v2 is string of desired sequence\r\n swaps=0;\r\nend","test_suite":"i='X'; %1\r\nd='X';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XO'; %2\r\nd='XO';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XO'; %3\r\nd='OX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XX'; %4\r\nd='XX';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXO'; %5\r\nd='XOX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXO'; %6\r\nd='OXX';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XOX'; %7\r\nd='OXX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXXXOOOO'; %8\r\nd='OOOOXXXX';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XOXOXOXO'; %9\r\nd='OXOXOXOX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOXXO'; %10\r\nd='XXOXXOO';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOOOOXX'; %11\r\nd='OOXXXXOO';\r\ne=3;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOXOXOXOXOX'; %12\r\nd='XXOOXXOXXOXOO';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXXOOXOXOXXXO'; %13\r\nd='OXOOXXOXXOXXX';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOOXXOXXOXXX'; %14\r\nd='XXXOOXOXOXXXO';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOOOOOXOXOXXXXXOOXX'; %15\r\nd='OXOOXXOXXOOXOXOOXOXX';\r\ne=5;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOXXXXOXXOXXXXXXXXX'; %16\r\nd='XXXXXXXOOXXXXXOXXXXX';\r\ne=5;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOXOOXXOOXOXXOXOXOO'; %17\r\nd='XOXOXXOXOXOOOXOXOOOX';\r\ne=3;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOOXXXOOXXXXXXOXXX'; %18\r\nd='OXOOXOXXXXXXXXXXOOXX';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOXXXXXXXOXXXOOXXOO'; %19\r\nd='XXOXXOXOXXXXOOXXXXXO';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%20\r\ni='XOOXXXXXOXXOXOXXXOOOXXOOXXOOOXXXXOXXXXOOOOXOXXXXXOXOOOOXXOOOXOXOOXOXOOOOOOXOOOXOOXXXXXXXOXXOXXXOXXOXOOOOXOOXXXXOXXXXXXXXOOOOOXOXOXXXOXXOOOXOXXOOOOOXOXXXOXXOXOXOOOOXXOOXXOXOOOOXOOXOOXXOOXXOOOXOXOXXXXOOXXXXXOOXOOXOXXXXXXOOOOOXOXXXOOOXOOOOOOXXOXOOXXOOOOXXXOXOXOXXXOXOOXXOXXOXOXOXXOXOXOOOOXXOXXOXXXXOXOXXOXOOOOOXOXXOOXOOXXXOXOXXOXXOXXXXXOXXOOOOOOXOOOOXOOOOXOXOXXOXOXXXOXOOOOXXOXXXOXXXOXXOOXXXOOXOXXOOXOOXOXOOOOXOOOOXXOXXOOXXXOXXOOXXOXOXXXOXOOOXXOXOOXXOOXOOOXXOOXXOXOXOXOOOOOOXXXXOXXOXOOXOXXOOOOXXXOOOOOOOOXOOOOOOXXOXXOXOOOOOOXOOOOOXOOXXOOXXOXXXOXOXOXXXOOOOOOXXOOOOXOXOXOOXXOOXOXXXOXOOXXOXOXOOXOXOXOXOXOOOXOOXXXOOOXXXOXOOOXOXXOXXOXXOXXXXOXOOXXOXOXXOOOXXXXXOXXXXOOOOOOOOXXOOXOOOXXXXXOOOXOOXOOOOOXXOOXXOOXXOXXXOXOXOXOOOXOXXOXXOOOOOXOOOOXXXOOXXXOOXOXOXXXXXOOXXOXOOOXOOOXXXOXXOXOXXOXOXOOXOOXXXOOXOOXOXOOXOOOOOOOXXOOOOOOXOOOOOOXOXXXXOOXOXOOXXXOXOXXOXOOOXOOOOOOXOOXOXOOXXOOXOOXXOXOXOOOOOOOOXOXXOXXXXOXXXOOXXOXOOXXXOXOXOOOOXXOXXOXOXXOXOXOOXXXOXXXOOXOOOXOOOXXOXXOOXXXXOXOOXOXOXXOOXXOXXXXXXXXXXOXXOOOOXXXOOXXOOXOOX';\r\nd='OXXXXOOOOXXOOOOXOXXOXOXXXOXXOOOXXOOOXXOXOOXXXOOOOOXOOXOOXXOOXOOOXXOXOOXXXOXOXOXOOOOOOOXOXXXOOXOOXOXXOXXXOXXXXOXXXOOXXXXOXXXOOXOXXXOOXOXXOXXOXOOOXXOOXXXOOXXXXXXOOXXXOXOXXOOOOOXOXOOXOOOOXXXOOOXXXXXOOXOXXXOOOOOXOOOOXXXOOOXXOOOOOOOXOOXXOOOOXOXXXXXOOXOXOXOXOOOXOXOOXOOXOOXXXOOXXXXOOOXXOXXOOXOOOOXOOOXOXOOXOXOXOXXOXXOOOOOOOXOXXOXXOOXOXOXOXXOXXOOOXOOOOOOOOOXOOXXOXOXXOOOOOOXOXOOOOOXXOXOXOXXOXOXXXOOOXXOOXXOXXOXOXXOXXXOOOOOXOOOOOXXXXXOXXOXOOXXOXXXXXOOOOOXOXOXOOXXOXOOXXOXOXXOOXOOXOXOXXOXOOOXXXOXXOXXOOXXXXXXOXOXOXOXXXOXXXOOOOOXXXXOXXXOXOXOOXOXOOXOOOXOOOOXOOOXXOXXXXOXXXXOOOOOXOOOOOOXXOOXOOXXXOXOXOXOXOXOOOOOXOOXXXXOOXOXXOXOOXOOXOXXXXOOOOXXOOXOXOOXOOXOOOOXXXOOOOOOOOXOOXXOOXXOOOXOOXXXXXXOOOOXOOOOXXOXXXXXXOXXXOXOXXXOXXXOXOOOXXOOXOOOOXOOOXOXOXOOOXXXOXOOXOXOOOXXXOOOXXXOXXOOOOOOXOXXOXXOOXXOOXOXOOOXXXOOOOOXXOOXXOXOXXXOXXOXOOXXOXOOOXXXOXXOOXOXXXOXXOXXOXXOOXXXXXOXXOXOOOOOXOXXOOOXOXOOOOXXXXXOOXOOXXOXXXXOXOOXXOXXXOOXXOXOXXOOXOXOOOOXXXXXXXOXOXXOXXXXXOOOOXOOXOXOXOOOXXOXOXOOOOXOXOOOXXOOOXXXOXXOXOXXXXXXOXOXOOOOXOOXX';\r\ne=47;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%21\r\ni='XOXXOXXXOXOOXXOOOXXXOOXXOOOXXOOXXOOXXOXOXXOOXOXXXOOOXOXXXXOOOXXOOXOXOXXOOOOXXOOOOXOXXOXOXOXOXXOXXXOXXXOOXOOOXXXOXOXXOOOOOXOXXOXXXXXOXOXXXXXOXXOOXXOXXXOOOOXOOOOOOXXXXXXXXOXXXOOXXOOOXXXXXOOXXXOXXOOXXXXXOXOXOOXOXOOXOOOOXOOXXOXXOOXXOOXXOXXXXXXOOXOOXOXOOOXXOOXXOOOOOOXXXXOOXOXXOXOOXXOOXXXOXXXOOOXXOOXOXXXOOXXOOOOOOXOXXXOXOOOXOOXOOXOXOXXOXOOXXOOXXOXXXOXOOXOXXOOOXXXXOXXOOXOOXXXOXXXXXOXOOOXOOOXXOXOXXXXOOOXXXXOXOOXOXOOXOXOXXXOXXXXXXOXOOXOOXOOXXXOXOOOOXXXXXOXXXXOXOXXOOOXOOOOOOOOXXXOXXOOXXXXOXXOOXOXXXOOOXOOXOXXXOXOXXXXXXXOOOXOOXOXXXXOXXOOOOOXOOXOXOOXXXOXXOXXOXXXXXOOXOOOOOXOOOXXOXOXXOOOOXXOXXXXOOOOXOOXOXOOOOXXXOXXXXXXXOXOOXOXOOXOOXOOXXXXOXOOOXXXOXXXXOOOOOOXXOXOXXOXOXXXXOXXOXXXOXOOXXOXXXXOXXXOXOOOXOOOXXOXOXOOOXXOOOOOOXOXOXOXXXXOXOOOXXOOXOOXXXOXXOXXXOXOXXOOOXXXOOXOOXXOOOOOOOOOXXOOXOXXOOOXOXOXOXXXOXXXOOOXOXOOXOOXOXXXOOOOOXOOOXXXOXOXOXOOOOOXXOXXXXXOXXOXXXXXXXOOOOOXXXOXXOOXOXOXXOXOXOOXOOXXXOOXXXXOOOOXXOOOOOOXOOOXXOOXOXOOOOOOXXXOXXOXXOOXXOXXXXXOOOOXOXOOXOOXXOOXXXOXXXXXOXOXOXOOOOOXXOXXXOOOOOOXXXOXOXXOOXXOO';\r\nd='XXXXOXOXOOXXXOOOXXXOXXXOXXXXXOOOXOOOXXOOOOXOOOOOOOOOXXXOOXOOXXXXOXXOXOXXXOXOXOXOOXOOOXXOXXOXOXOXXXXOOOOXXOXXXOOOXOXXXOXOOOOXOXOOOXOOOOXXXOOOOXOOOOXOOXOXXOXXOOXXOXOXXXOOXOXOOOOXOOXXXOXOOOOOOXOXOXXXXOOXXXOXXOXOXXOXOOOXOXXOOXXOXXOXXOXXXXOOOXXXXXOOOOXOXXXXOOOOOXOOOXOOXXXOOOOOOOOOOOXOOOOOOOXOXXOXOOXOOXXXOXXOXXOOOOOXOOOXXOXXXOXOOXOOOOOOOXXOXXOXOXOOXXXOOOXOOXXOOXXXXXOOOOOXXOOOOOXXOXXOXXXXOXXXXXOXXXXOOXXXOXXXXXOXOOXOOOOXXXOOOOXXXOXOOOXOXOXOXOOXOXXXXXOXXXOXOOXOXOXXXXOXOOXOOOXXOOXXOXXXXXXXOXXXXXXXOOXXXXXXOXXOXXXOOXOOOOXXOOOOXOXXXXXOOOXOXXOOXOXOXXXXOOXOOXOOOXXOOOOOXOOXOOXXXXOOXXXOOOXOOXOXXXOXOOXXXXOXXXOXOXXOXXXXOXXXXOOOXXXOOXXXXOOXXOXOOOOXXOXXXXOOXOXXXXXOOXXXXOOXXXXXOXXXOXXOXOOXOXXXOXOXXOOXOXXXOXOOOOXXOXOOXXOOOXOXXOXXOOXXXOOXOOOOXOOOXXOXOXOXOXOXOOXXOOXXXXXXXOOOOOXXXXOOXOXXXXXOXOXOXXXOOXOOXXXXOOXXOXXOXXXXOOXOXXOOXXXXOOXOOXOOXXXOXOOOXOOXOXXXXXOOOOXOOOXOOXOXXOOOXOXOXOOXOXXXOXOOXXXXXXXXXOOXOOXOOOXXOXXOOOXXXOXXOXXOOOXXOXOXOXOXXXOOXOOXXOOXXOOXOXOOOXXXOXOOXOXXOXOOXXOOOOXOXXOXOOOXXOOXOOOOXXXOOXXOXOXOOXOX';\r\ne=60;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%22\r\ni='XXXXOOOXXOXXOXXOOXOXXOXOOOXOXOOXXXOOOOOXXOOXXOXOOOXXOOOOXOOOOXXXXOXOOOOXOXXOOOOXOOXOXXXXOXOXXOXOOOOXXXOXXOOOOXOOXOOXXOOOOOXOXOOXXXXXOXXXOXXXOOXOOOOXOXXOOOXXXXOOXOOOOOXXOXOXOOXOOOXOXOXXXXXOOOXXXOXOOXXOOXXXXXOXXXXOOXOXXXXOXOXXOOOOOXOXXXXXXOXXOOOXOOXXXOOOXXOOXOOXXOOOOXOXOOXOOXXXOXXXXXOOXOXOXXXXXXXXOOXOXXOOOXOXOOXXOOOOXOOOOOXOOXXOOXOOXXXOXXOOXXOXOXOXOXXOXXOXXOOOXXOOOXOXOOOOXOOOOXOXXXOXOOOOXXXXXXXXOOXXOOOXXOOXXXOOXXXXXOXXOXOXXXOOOXOOXXOXXOXOXXOXXOOOXOXXOOOXOXXXOXXXOOXXOXXXXXXOOXXXXXOOOOXOXOXOXOOOXOOOXXXOXOOXXXOOXXXOOOOOXXOXXOXXOOXOXXXOOOXXXOXXXOOOXXXXXXXOOOXOOOXXXXXXOXXOXOXXOOOXXOOXOOOXOXOOOXOXXOXXOXOOXOOXOOOXOOOOXOXOXXOOOXOXOXOXXXOOOXOOOXOOXXXOOXOXOXXOOXXXOOOOOOXXXXXXXOOOXXOXOXXOOOXOXOXXOOOOOOXXXXXXOOXOOXXXXOOOOOOOXOOOOXXXXOXOXOOXOXOOOOXOXXXOOOOXXOXOXOXOOXXOOOOOOXXOOOOOXXXXXXOOXOOOOOOXXXOOXXOXXOXXOOOOOXOXOXXOXXOXOXOOXXXOOOOOXOOXXXOXOXOOOXXOXOOOOOXXOXOOOXOXXOOXOXXXOOXXOXXXXXOXOOOXXOXXOOOOOXXXOXXOOOXOOOXOOXOOXXOXXXOXXXOOXXXXOOXXXOOXXXXOXXXXOXXXOOXXOXOOXXOOXOXOXXOXXOXOOXOOOXOXXOOOOOOOXOOOOXOX';\r\nd='OXOXOXXOXXXXOOXOOXOOXXOXXOOXOXXXXXOOOXXOXOOXOXXOXXOXXOOXXOXXOXOOOXOOOOOOXXOOOOXOXXOOXOXOXXOXXXXOXOXOOXOXXXOXOOOXOXOXOOOOOOXOXOOOOXXOOOOXOXOOOOXXOOOXXOXOXOOXXOOXOOOOXXOOXXOXXOOXXOOOOXOXXXOXXXXOOXXOXXOOOXOXXXOOXXXOOXOXOOOXXOOXOOXXXXOOXXOOOOOXOOXOXXXXXOOOXOOXXOOOOOXXXXOXOXXXXOXXOOXOOOOXOOOOOXXOOXOXOOOOOXOOXXXOOXXOOOOOXXXXOXXXOOXXXXOXOXOOXXXOXOXOXOOXOOXOXXOOXOOOOOOOXXXOOXOXOXOOOOOOXOXXOOXXOXXXXOXOXOOOXOXOXOOOXOXOXOXXXXXOOOXXXOXOXOOXXXOXOXOOOOOOOXOOXXXOOXXXOOOOXOOXXXOXOOOOXOOOXXOXOOXXXXXXOXOOXXOOXXXXXOXXXXXXOOOXOXOOOXOXOXXXXXXXOXOOXXOOXXOXXOXOOXXXXOOXOXOOOOOOXOXXOOOXOXXXXOXOXXOOXOOXXXOOOOXOXOXOXXXOOXOOOXXOOOXXOXXXXXOXOXOOXOXOOOXOXXXOOOXOXOOOXXXOXOXOXOOXOOXOOXXOOXXXOOXOOOOXXOOOXXXXOOXOOXXXXOOXXOOXOOXXOOXXOOXOOXXOXXOXXXOXXOOXXXOOOXXOOOOXOXOXXOXOXOXXXOOXXXXOXOXXXOOOXXXOOXOOXOOXXXXOOOXXOOOOOOXXXOOOXOXXXOOOXOOXXXXOOXOXXOXXOOXOOXXXXXOXXXXXOOXOXXOXXOXOXOXOXXXOOXOXOXXOOOOXXOOOOOOOOOOXOOXOOOXXXOXXXXXOXOXXXOOXOOOOOOXXXXXXXOXOOOXXOOOOXXXXOXOXOXXOOXXOOXXOXXOXOXXOXXXXXOXXOXOXXXOOOOXXXOXOXOXOOOOXXOXOOXXO';\r\ne=47;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%23\r\ni='OXXXXOOXXXOOOOOOXXXOOXXXOOOOOXOOOOXOOXXOXOOXOOXOXOOOOOOXXXOOXOOXXXOOXXOXOOOXXOXOOOOOOOOXXOOXOXOXXXOXOOOOOXOOXXOOOOXXOXOXXOXOXOXXOXXXXOXXXOXOXXXXXXXOXXOXXXOXXXOOOOXOXOXXOOOXXXXXOOOXXXOXXOXOOXXOXXXOXOXOOOOXXXOOXXOOOOOOXOXOOOXXXXOXOXOXXXOOOOXOOOXOXOXOOOXOOXOXOOOXOOOXXXOOOXXXXXXOXXXOXOXOXOOOOXXOXOOOXXOXXOOOXOOOXOOXOOOXXOOXXXXXOOXOXXXOOOXXXOOXXXXXXOXXOOOOXXOOXXXXXOOXXXOXXXXXXXXOOOOOOXOXXOOOOOXXXOXXOOOOXOOOXXOXOXXOXOOOOXXOOXOXOOXXOXOXOXOOXOOXXXXXOOXXOXXXXXOOXXXXOXOOOOXXXXOOXXXXOOOOXOOOOOOOOXXXOXXXXOOXXXOXXXOOXOXXOXOXXXXOXXOOOOOXOOOOXXOOOXOOXXXOXOXXOOXOOXXOOXXOXOXXXXOXOXXXXOXXOXXXOXOOOOOOOOOXOOOOOOXOXXXOXOXOXXXXXOXOXOXOOOXOOXXOXXOXXOXXXOOOXXOOOOXOXOXXOXOOOXXOXXXOOXXOOXOXXXXOXXXOXXXXOXXXXXXOOXOXOXXXOOOXXXOXOOXXOOOOOXOXOOXOXOXXXOOOXXXOXOXXOOOXOOXXOOXOOXOXOXXOXXOOOXXOXOXXXXXXXXOOXXOOOXXOXOOOOXOOOOXOOOXXXXOOOOXOOXXOXXOXOOOXOXXOOOOXXOOOOXOOXXXXXOOXOOXXOXOXOOXXXOOXXOOXXOXXOXXOOOXXXOXOOOXOXOXXOXXXXXXOXOOXXOXXOOXXOOXOXXXOXOOOOXOXOOXXOXXOXXOOXOXXXXOXOXOOOOXOOOOXXXOOOOXXXXXXXXOXXOXXOXXXXXOXXXOXXOOXXXXO';\r\nd='XXOOXXOXOOXOOOOOXOXXXXXXXOOOXXXOOXOXOXOOOXXOOXXXOOXXXXOOOOXOOOOXOOOXOOXOXXOOOOOXXXOXOOXOXOOOOXOOOXXOOXXOXOXOXOXXOOOXXOOXOXOXOXXXOXXXXOOXXXXOXXXOXXOXXXOOXXXOXOXXOOXXOXXOXOOOOOXXXOOOXOXOOXXXXOXXOXXOXOXXOOXXOOXXXXXOXXXOXXXXXXOOXOOOOXOXOOXOOOXOXXXOXOXOOXOOXXXOXXXXXXXXOXXXOOOXXXXXXOXOOXXXOXXXOOXOXXOOXXOOOOXOXXXOOOXOOXOXOOOXXXOOXXXOOOOOXOOXXOXXOOXXXXXXXOOXOOOXXXOXXXOOXOOOOOOXOXXOOXOOOOOXOXXXOXOXOOOOXXOXXXXOOOXOXXOOXXXOXOXXOOOXXXOXXXXOXOOOOXOXXXOXOXOOXOOXOXXXOXOXXOXOXXXXXOXOOOXOXOOXXXXXOOOXOXXOXXXXOOXOXOXOXXOOOXXXXOOOOOOOOOOOXOOXXOOOOOXXOXXOXXOOOOOXXOXXXXOOXOOXXOXOXOXXXXXOOXOOOOOXOXXOXXXXXOXXOXOXXOOXOOXXXXXOOOOOXOOOOXOXOOOXOXXXOOOOXXOOXOOOOOOXXOXXOXOOOOXOOOXXXXOXXXOXOXXOXXOXXOOXOOOXXXXXXXOXOXXXOOOOOXOOOXXOXXOOOXXOOXXXOXXOXOXXXOOOOOOXXOXOOXXOXXXOXOXXOXOOOXOOXXOXXOXXXOXXOOOOOXOOXOXXXXXOXOXOXOOOXXXOXOXOXXOOXOOOXXOOOXXXOOOOOOOOOOOOXXOOOOXXOOXOOOXXOXOXXOXOXXOXXXOOOXXXOXOOXOOOXXOOXXXOOOOOXXXXOXXOXXXOXOXXXOXXXOXOOOOOXOXXXXXXXOXOOXOXOXXXOXXXXOOXOOXOOXOOOXXOOXXOXOXOOXOXXXOOXXOXXXXOXXXOOXXOOXOXXOXOOXOX';\r\ne=42;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%24\r\ni='XOOXXOOXOOOXOOOOOXOOOXXOXXOOOXOXXOOOOXXXOXOOOXXXOXOOXXXOOXOOXOXXXOOOOXOXXOOOXOXXOXXXOXXXXXOOOOXXXOXOOOXOXXXOXOXXOOOOOOOOOOOOOXOXOXXOOXXOXXOXXOOXXOXXXOXOXOXXXXXXOXXOOXXXOXOXXOXXXXOOXXXXOXOXXOOOXOXXOXOOOXXOXOXXXXXOOOOXXOOXOXOOXXXOOOXOOXOOXOXXOOOOOOXXXOOOOOOXXOOXOXXOOXXXXOXXXOOXXOOOOXXOXXXOOXXXOXXOXOOXXXOXXXXOXXXOXXOOXXOXXOXXXXXOXXOXXOOXOXOXXOXOXXOOOXOXXOXXOOOOOOOOOOOXXOOOXOXXOXXXXXOXOOXXXOOOOXOXOXOOXOOOOOOXOXOOOXOXXOXOXXOOXOOOXXOXOOXOXXXXXXOOXOXOOOXXOOOOXOXOXXOXXXOOOXOOXOOXOOXXXXOXOXOOOXXXOOXOOXOXXOOOXXXXXXOXOXOXXOOOXXXOOXXOXOXOOOOOXOOXOXXOXOXXXOXXOXXOXOOOOXOXXOXOXXOOXXXOOXXXXXXOXXXXXXOXOOXXXXOXXOXXXOOOXOXOXXOOOOOOXOOOXXXOOXOOXOOOOOOXXXXXOXXXXXXXXXXXOOOXXOOXXXOOXXOOOXOOXOOXOXOXOOOOXOOXOOXXXXOOOXOXXXOOOOOXXOXXXXOXXOXOOXOXXXXOOXXOXOOOXXOOOOXXOXXXOOOXXOXXXOOOOOOXOOXOOXOXXXOOXXXXOOXXOOXXOOOXOOOOOXOXXOOOXOXXXXXOOOOOXXXXOXOOXXOXOXOOXXXXOOXOXXXXXXXOXXOXOOXXXXXXXOOXXXXOOOXOXOOOXXXXOXXXXXXXOXOXXXXXXOXXXOOXOOXXXOXOXXXXOOXXXXXOXOXXOOOOXXOOOXXOXOOXOXXXOXOOOXXOXXXXOOXXOXOOXOXXXXXOXOXXXXXOXOXOXOXXXOXO';\r\nd='OOXOXXXXOOOOOXXXOXXXOXOXOOOOOOXXXOOOXOOXXXOOOXOXOOOXOOXXXXXXXXXXXXOXXXOXXOOXOOXOOXOXXXXXXXXXOXOOXXOXXOOOOOOOXXXOXOOXXXOXXXOOOXXOOOXXOOXOOXOOOXOOXOOOOOXXXXXXOXXXOOXXXXXXXOXOOXXOOOXOXOXOOXXXXOXOOXXOOOOOXXOOXOXOXXXOOXOXOOOOOOOXXXOOXOOXXOXOOXOOOOXXOOXOXOOOXOXXOOXOXXOXXXOXOXOXXOOXOOXXOXOOXXOXXOOXXOOOXXOXXOXOXXXXXXOXXOOXOOXOXOXXXXXOXXOXOXXOOOXXOXOXOXOOXXXOOXOOXOOXXXOXXXOOOOXOXOOXOOOOOOOXXXXXXOOXOOOOOOXXOXXOXXXXXXXXXOXXXXOOXOXXOXXOOOXXOOXXXXXXOOXXOOXXXOOOOXXOOXXXOOXXOXXXOOOOOXOOOXXXOXOOXOXXOOXXXXOOOXXXXXXXXXOXXXXOXXOOOXOOXXOXXXXOOXXOXOXXOXOOXOXXXOXXXXXXXOXOXXOXOXOXOXOXXXXXOXOOOOXXXXOXOOOXXXOXOXOXOOXXOXXXOXOXXXOOXOXXOXOOOXOXOOXXOXXOOOXOOXXOOXOOXOOXXXXXOXOOXXOXOXXXOXOOOXXXOXXOXOOOXOXXOXXXXOOXOOXOXOOOXXOXOXXOXXOXXOOXXOXOOOOOOOXXXXOOOXXOXOOOXOOOOXXXXOXXXOXOOOOXOXXXOOXOXOOOXXOXXOOOXOXXXXOOXXOOXXXOOOXXXOOXOXXXXOOXXXXXXXXOXOXXXOOXOOOXXXXXXOOXOOXXOOXOXOOXOOOXOXXXXOOXXXXXXOXXOXXXOXXOXXXOOOOOOXXOXOXXOOOXXXOXOOOXXOXOOOXOXOOOOXOOXOXOOXXXOOXOOXXXOOXOXOOOOOOOOOOOXXOXOOXOOXXOXOXOOXXOOXXXOXOXXOXXOXXOXOOXOOXO';\r\ne=64;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%25\r\ni='XXXOOOOOOOXXOOXXXXOOOXOOOXXXOOXOOXXXXXOOXXXXXOXOOXXXXXOXXOOOXXOXXXOXXOXOOOXXXXXXOXXXOOXXXOXOXXOXOOOXXOOOOXXOOOXXXXXXXXXOXOOOOOXXOOOXOOXOXOXOOXXXOXXOXOXOOOXXOOOXXOXXXOOOXXOOOXOOOXOOXOXXOOXOXOXOOOXOOXXOXOOXXOOOOOOOXOXOXOXOOOOXOXOXOXOXOXXOOOOOOOXOOOOXOOXXXOOOXXOOXOOXXOOOXXOOOXOXXOOOOXXOOOXXOOXXOOOOXXOOOXOOOXXXOOXXXXXXOOXXOOXXOXXOOXXXOOXXOOOOOOOXOXOOXXXOXXOOXXXOOOXOOOXOOOXOOXXOOOXOOOOXOXXXOXOXOXXOXOOXOXXOOOOXOOOOOXOXOOXOXXXOXXXXXOXXOOXOXXOOOXXXXXXXXXXXXOOOXOXOOXOOOXXOOXOOOXOOOOXOOOXOXXXXXOXOOOXXXOXXXOOOXOOXOOOXOXOXXOXXOOOOXXXOOXOXOOOXOXXOOXXXXOOXOXOXOOXXXOXOOOOXOXOOOXXXOXXXXXXXXXXXXXOOOXXOXXXOOXOOXOXXOOOXXOOOOXOOOXXOOOXXXOOXXXOOOXXXXOOOOXXOOXXXOXOXXOXOXXXXXXOOOOOOOOXXOOOOOOXXOXOOOXXXOOOOOOXXXXXXXOOXOOXXOOOXXXXOOXXXOOOXOXOOXOXOXXOXXXXOOXOXXXXOOOXOOXXXXOOOXOOXXOXOOXXOXXOOOOXXOOOXXXXXXXXOOXOXXOXXXOXXOOXOXOOOOXXOXOXXOOXXOOXOOOOOOOXOOOXOXOOOXXXOXOOXOXXOOXOXXOXOXXXXOXOOOXXOOOOOOXOXXXOOXXOXOXOXOXOOOXOXXXOXOOXOOXXXOXXOXOOXOOXOXXOOOXXOXOXXXOOXOXOOOXOOXOOOOXXXXOXXXXOXOOOXOOXXXXXOOOXXOXXXOXXOXOOXOOO';\r\nd='XXOXXXXOXOOOXOOOXOXOOOOXOOOOOXXXXOXXXXOOOXXOOXOXXOOOXOXXOXXOXXXOOXOOXOOOXXXXOOOOOOOOXXXXOOXXXXXXOXOXOOOOOXXXOXOOXXOXXXOXXOXOXOXXOOOXXXXOOXOXXXOXOOXOXOOXOXXOXOOXXOOXXXXOOOXXOXOXOOOOOOXXXXOXXXXXOXXOOOXOXXOOOOOOOOXOOOOOOXXXOXOOOOOOOXOOOXXXXOOXOXXXOOOOOOOOOXXXXOOOOXXOOOOOOXOOOXOXXXOOOXXXOOOXXOOXXOOOOXXXOXOOXOXXOXXOXXOOXXOXOOXOXOXOOXXOOOXXXXOXXOXOXXXOXXOXOOXXXOXOXXOXOXXOXOOOXXXOOOOXXXXOXOOOXOXXOOOOOOOOOOOXOOXOXOOXXOXOXXOOOOOXXXOXOXXXOXXXOOXXOOOOXOOOOOXXXXOOOXXXOXXXOOXOXXXOXOXOXXXXOXXOOXXOXOXOXOXOXXXOOOXXOOOXOOXOOOXXOOOXOOOXXOXXXXOOOXOOXOXXXXXOOOXOOOXOOXXXXXOXXOXOXXOOXOOOOXXOOOXOOOOXOXXXOOXXOXXXOOXOXOOOOOXOXXXXOXOOOOOXXXOOOOOOOXXOXXOXOXOOOXXOXOOXOOOOXXXOOXXXXOXXOOOOOOOXOXOXOXOXXXOXOOOXOXOXXXOXXXXXXXXXOXXOXOOOXXXXOOOOXXOOXXOOXOXXOXOXXXXOXOOXOXOOOXXXOOOXOXOXXXXOOOXXOXXOXXOXXOXXXOXXOXXOXXOXXOOOXOOXXXXOOOOOXOXXXXXOOOOXOXXXOXXOXOXXXOOXXOOXOOXOOXOOXOOOXOOXXOOOXXXXXOOOOXOOXOOXXOOXXXXXXOOXXOXOXOXXXOXOXOOOXOXXXOOXXOXXXOXXXOOOOOOOOXXOXXXOXOOXOOXOXXOXOXOOOOOOXOXOXXOOXOOOOXOOXXOXOOOXXXOOOOXOXXOXXOXOOXO';\r\ne=23;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%26\r\ni='OXXOOOOOOXOOOOOXOOXXXXXOXXOOOXOOXXXOOXOXOOXOXOOOXXXOXOXXOOOOXXXXOOXOOXXXXXXOXXXOXXOOXOOXXOXXOXXOXXOXOOOOXXXXXOOOOXXOXXOOOOOOOXXXOOXXOOOXXOOXXXOXOXOXXXOXOOOOXXOXOXXOXOOOXOXXXOOXXXOXXXOXXOOXOXOOOOXXXOXOOXOXXXXXOXXOOOOOOXXXXOOXOXXXXOXOOOOOXXOXXXXXOOXXXXOXOOXXXOOOXXXXOXOXXXOOXXOXOXOXXOOOXXOOXXXXOOXXOOXOXXXXXXOOXXOXOXOXXOOXOOXXOXOOOXOOXXOOXXOXXOOXOOOOOOOXOXOOXOOOOOOXOXXOXXXXOOOXXXXXXXXOXOOXXXOXOOOOOOXOOOOOOXXOOXOOXXOXXOXXOOXXXOXOOXOOXXXXXOOXXXOXOXOXXOXOXOXXXXOXXOOXOXXXOOXXXXOOOXXOXOXXOOXOXXXOXXXXOOXOXOOOXXXXXXOXOOOXOOXXXOXOOOOXXOOOOOOOXOOOXXOOXXOOXOOOOOXXXOXOXOXOOXOXOOXXOOOOOXOOOOOXOOOOXXOOOOOXXXOXXXXOOXXOXOOOXXOXXXXOOXXOOOOOXOOOXXOXOOOOXOOXOOXXOXOXXXXXXXXOOXXOXXOOOXOXXOOOOXOOXOOXOXOXOOOXXOXXXOOOOOXOXXXOXOOXXOXXXOOOXXXXOXXXOXXOOOOXOXXXOXXOOOOOOOXOXOXXXOOXOXXXOXOOOOXXXXOXXXXXXXOXXXXOXOXOXXOXOXOOXOXXXOXXOXXXOOXXXOXOOOXXXOXOOXXOXOOOOOOXXOXOXXXOXOXOOOOOOXOXXOOXOXXOOOOXOOOOXXOOXOOXXOXXOXOXXOOOOXXOXXOOXXXOOOXXXOOXXOOXXOOOXXOXXOXXXXOOXOOXOOXXOOOXXXOXXOXXOOXOXOOXXOOOOOOXXOXOOXXOOXXXXOOXOXXOXOXXOXX';\r\nd='XOOOOXXOXXXOOXXOOOXOXOXXXXOXOOXXXXXOXOXOXXXXOOOOXOOOOXOOXOXOXXXXOOOXOXXOXOOXXOOXOOXXOOXOXXOXXXOOOOXXXXOOXOXXOOOXXXXXOXXOXXOXOOXOOOXOOOXOOOOOXOXOOOXXOOXXXXXOOOOOOXXXXOOOXXXOOOXXXOXOOXXOXXOOOOOOXOXOOOXXXXOXXXXXXXXXOXXOXOXOXXOOXXXXXOOXOOOOXOOOOOXOOOOOXOXXOOOXXXXOOXXXOXXOOXXOOOOOOOOXXXXOXOOXXOXOXOOXOXOOXXOOOXOXXOXOXXOXOOOXOXOOOOOXOXXOOXXXOOXOXOOOOOXXXOXOXXXOOOOXXXXOXOOXXOXXXOOOXXOXXOOXXOOXOXXOXOXXXXXXOOXOXXOXOXOOOXXOXXOXOXOOOXOOXOOOOOOXOOOOOXXXXXXOOXXXOOXXOXXOOOOXXXOXXOXOXOXOOOOXXXOOXOXXOOOXOOXOXOOOXOXOXXOOXXOOOXOXOXOXXXXOXOXOOXXXXXXOOXOXXOXOXOOOXXXOOOOXXOXXXOXOXXOXXOOOXXXOOXOOXOXXXXOOXOOOOXOOOOOOXXOXXXXOOXOXXXXXXOXXOOXOOOOXXXXOXOOXOOOOOXXXXXOOOXXOXXOXXXXXXXXOOXOOOOOXXXXOOOOOXOXOXOOOXOOOOXOOOOOOXXXXXXOXOXOXXOOXXXOXXOXOOXOXXOOXXXXXOXOXXOXOOXXXXXOOOXOOOXXOOOXOXOXOOOOXOOXXXXOXOXOOXOXXXOOOOXXOXXXXXXOXXOXOXOXXXXXXXXOXOXXXOOXXOXXOOXXXXXXOXXXXXOXOOOOOXXOXOOXOXXXXXXXOXXOXOOOXXOOXXXOOXXOOOXXXXOOOOOOXOOXOOOOXOOOXOXOOXOOOXOXXXOOXOXOXXXXOXOXOOOXOOOXXXOOOXXOXXXXXOXOOOOXOOOOOXXXXOOOXXOXOXXXOOXOOOOXXOOX';\r\ne=38;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%27\r\ni='XOXOXOOXOXXOXXOOXXOOOXOOOXOOXOXXXXXXXXOXXOOOOOXOOXOXXOXOXXOOXXOOOOXXOXOXOOXOXOOXXOOOXOXOOXOOXOOOOOOOOXXXXOOOOXOXXXXXOOXOOOOXXOOOXXXOOOXXXXOOXOXOXXOOOXXOXXXOXOXOOOOXXXXXOXOOOXXXXXXXOOOOXXOXOOXXXOXXXOXXOXOOXXXOXOXXOOXOXXOXOXOXOOXOOOXXOXXXOXXXXOXXOOOOXOOOOXXXXXXXXOXXXOXXXOXOOOXXXXOXXXOXOXXXXOXOOXOOXOXXXXXXOOXOXOXXOOOOOXXOXOOXXOOOOXOXXOOOXOOOOXOXXOXOXOOOXXXOXOXOOXOOXOOXOXXXXXOOOXOOXXOOXOOXOOOXXXOOXXOXOOXXXXXOXXXXOXXOXXOOOOOXXXXOOOXOXXXOOOOXOXOOXXOXOXOXOXXOOXXOOXOXXOXXOXOOXOOXOXOXXOOXXXOXXXXXXXXXXOXOXXXOXOXXXOXXOXXXOOXOXOOXOXOOXXOOOXOXXOXOXXOOXXOXOXXOXXOXXXXOXOXOXXOOXOOOXXOXOOXOOXXXXXOXOOOXXOOOOOXXXXXOXOXXOXOOXOXOXXOXOOXXOOOOOXXOXXXXXOOOXOOXOOOXOXXXXOXXXXOOXXXXOXXOXXXXXOOXOOXOXXOXOOXXOOOOOXOOXOXOXXXOXXXOXOXXXOXOXXOXXOXOXOXXOXXXOXXXXOOXXXOXXOOXOOOXOXOOOXOOXXOXXXXOOOXOOXOOOOOOOOXXOOXXOXOOOOXXOOOXOXOOXOOXXXXOXOOXXXXXXXOXOXOXXOXOXXOOXOXOXOXXXOOXXOOOOXOOXOOXXXOXOXOOOXXOXOOXXXOXXOXOXOXOXXOXOOOOXXOOOOXXXXXOOXXXOOXXOXXXXXOXOOOXXOXOXOOXXOOOXXXOOOOXOXXXOXXXOXOXOXOOOOOXXXOXXXOOXOXOXXOXOOOXXXXOOXXXXOO';\r\nd='XXXXXOXOXXOOXXXOXOXOXXOXXOOXXXXOOXOXOOXXXXXXXXXOXOOXOXOOXXOXXXXXXOOXOOOOXXXXOXOOXOOOXOOXOXOOXOOOOOOXOXOXOXOOXXOXXXXXOOOXXXOOOXOXOOXOXXOOOOXXXXOOXOOXOOOXXXXOXOOOXOXXXOOXOXOXXOOOXXOXOXOXOOOXOOXOXOXOXXOOXXXOXOOOOXOXXOXXXXOOXXXOXOXOXOXOXXXOXXXXXXXXXXXOXXOXOOOOXXOOXOOXOXXXXXOOOXXOOXOOOOOOOOXOXXOOXOXOXOXOXOOXXXXOXXOOXXXXXXXXOOXXXOOOOOXOXXOXXOOOOXOXXXXOOXOXXXOOOOOXXXOOOOOXOXXXXOOXXXXXXOXXXXXXOXXOXXXOXXOXXXXXOXXOXXOOXOXOOOOOXXOOXXOOXXXXOOOOOOOOOXOOXXXXOOXXXXOXOOOOOOXXXOOOOXXOXOXXOOXOXOXOOOXXXOOOOOOOOOXXOXXOXOOXXXOOXXOOXXXOOOXOOOXXOOXOXOXXOXXXXOXXOXOXOXXXOOOXXOOXXXOOOXOOOOOOXOOOOXOXOXXXXOOXOXOXOXXOOXOXXOXOOXXOXOOXXOOXXXXXXOOOOOXOOXXOXXXXOOXOOXXXXXXXOXXOXXOOXOXOXXXXXOXOOXXOOOOXXOOXXXOOXXOXXOOXXXOXOOOXOXOXXOOXXXOXXXOXXXOXOXXOXOOXOOOXXOOXXXXXOOOXXOXXXXXXXXXOXOOXXXOOXXXXOOOXXOXXOXXOXOXOOXXXOOXXOOOXXOXXOXXXOOOOXOOOXOXOOXXOOOXOXOXXXXXXOXOOOOOOOOOXXOXXOOOOOOOXOXXXOXOXOXXOXXOOXXOOXOXOOOXOOOOOXXOXXXXXXOOOXXXXOXXXXXOXXXXXOXOXXXOOOXXOOOXXOXXXOOXOOOXXXOOOXXOOXOOXXOOXXXXOOOXOOXOXOOXOOXXOXOXXOOXXXXXXOOOOOOX';\r\ne=36;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%28\r\ni='XXXXOXOOXXOOXOXXOXOXOOXXXOXOXOXOOOOOXOOOXXOOXOOXOXOXOOXOOXXXXOOXXOOXXOOOOXOXOXOOOXOXXXOOXXXOXXOOXXXOXOOOOOOOOXXOXOXXOOOXOXOXXOOOXOXXOXXOOOOXOXXXXOXOOOXOXOOOXXOXXXOXXXOXOXOXXOOOOXXXXXXOXOOOOXOXOXXXXOXOXOOOOXOOOOOOOOOOOXOXXXOXOXOXXXOXOOOOOOXXXXOXOOOOOOXXXXOXXXXXOXOOOOOOOXXXOOOOOXOOXOXXOOXXOOOXOXXXOXOOXXOOXXOXXXOOOOXXXXXOOXXOOXOOOXOOOXXXXXOXOOXOOOXOXOOOXXOOOOXXXOXXOXOOOXOXOOOOOOOXXXOXXOXXOXXOXXXOXOXXOXOXOXXOXOOXOXXOXOOOXOOOOXOXOXOXOXXXXXOXXOXOOXXXXOXOOXOOXOOOOOXXXXXXXOXOOOXXOOOOOXXXXXOXXXXXOOOXXOXOXOOXXOOXOXOOXXOXOXOXXXXOXOXXOOOXOXOOOOOOXOXOXXXXOOXXOOOOXOXOXXOOXXXOOOXOXXXOXOXXXOXXOOXOXOOOOOXXXOOXOXOOXXXOOOOXOXXXXOOOXXOXOOXOOXXXXOXOOXXXXOOXOXXOOOXOOXXXOXOXXXXXOOOOOXXXOXOOOOXOXOOOOOXXXXXXOXOXOXXXOOXOOXOXXOXXXOXXOOOOOXXXOXOXOOOOOXXOXXXOOXXXXXOOXOOOOOOXXXOOOXXOXOOOOOXXOXOXOXXXOOXXOXXXOOOOXOOOXOXOXOXOXOXOXXOOOXXXOXOOOXXOOXXXXOOOOXXOOXOOOOXXXOXXXOXOOOOOOXXOOOOOXOXXXXOXOXXXOOXOOOOXXOXOOOOOXOXOXOXXOXXXXOOOXXXXOOOOXOXXXOOOXXXXOOOXOXXXXXOOXXXXOXXXXOXXOOXOXOOOXOOOOXOOXOXOOXXXXOOXOXOXXXXOXOOOXOOOOOO';\r\nd='XOOOXXXOXXOXXOOXOOXOXOXXOOOOOOXOXXXXOOOOXXOOXOOXXOOOOXXXOOOXXXXOOOOOOOOXOXXXOXOXXOXOOOOOXOXXXXXOOOOXXOOXXXXXOXXXXXOXXXOXOOOOOXOOOXOXXXXOXXXXXOOOXOOXOXXOOOXXOXOXOOOXXXOOOXOOXOOOXXOXOXXOOOXOXOXXXOXXXXXOOOOXXOXOOXOOOOXXXXXOOOXXOXXXXOXOXXXXOXOOOOOXOXOXXOXOXOOOXOXOXXOXXXXOOXXOOXOOOOOXOXOXXXOOXOXXOOOOXOXXXXOOXXOXOXOXXXOXOXXOXXXXXXOOXXOOOXXXOOXOXOXOOOOOXOXOXXOOOOXXXOOOXXOOOXOXOOXOOXOXOOXXOOOXXXXOOOOOOOXOOOXOOOOOXXXXOXOXOXXOXOOXXXXOOXOXOXXOXOOXOOOXOXOXOOXXXXXOXXXXXXOXOOOOXXXOOOOOXXOXXXXXOXXOXXXOOOXOOOXOOXOXXXXOOXXOXOOXOOOXOOOOXOXOXXXOXOOXOOXOXXOOXOXXXOXOOOOOOOOOOXOOOXOOXXOOXOOXOXOOOXXXOXXXXOOXOXOXOOXXXXOOOXOXXXOOXOXOXXXOOXXXXOXXXXXOXOXOXOXXOOXOXXOXXOOXXOOOOOXOXXXXXXXXOXXOOXXXOXXOOOXOOOOOOOOOXOXOOOXXXXXOXOOOOOOXOXOXOXOOOOXXOOOXOOOOOXXOXOOOXOOXXOXOXOOOXXXOOOXOOXOOOOXXXXXOOXXOOXXXXXOOOOOXOXOOXOXOOXOOOXOOOXXOOXOOOXOOXXOOXXXXXXOOXOXOOOOXXXOOXXOXOOOXXOXXOXOXXOXOXXXOOXOXXXOOXXXXOXXOOXOOOXXOXOOOXXXXXXOXXOOOXOOXOOOXXXOOOOOXOOXXXXXOOXXXOOXOOXXOOXOXOOOXOXOOOXOXXXOXOOXOOXXOOXOOOOOOXXXOXXOXOXOXOXOXXOXXOXX';\r\ne=32;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%29\r\ni='OXXOOOOXOOOOXXOOXXXOXOOOOOOOXOOOXOXXXOXOXOXOXXXOXXOOXOXOXXXOOOXOOXXXOXXXOXXOXXXOXXOXXOOXXXOXOOXOXOXXXXXOOOOXOOOOOOOOXXXXOXXOOOOXOOOXOOXXOXOOOOXOOOXXXXOXXXOXOXXXOXOOXOXOOXXOOOOXXOOXXOXOXXOXXXOXOXOXOXOOOOXOOOXOXOXOXXXXOXXOOXOOXOOXXXXXXOXXXOXXOOOXXOXXOXXOXXXXOOOXOXOOOXOOOOOOOXXOXOXXOXOOXXXXXXXOOXXXOOOXXOOOXOOOXXXOXXXXXOXXOXXXOXOOOXXXXOOXXXXOOOXOXOXXXOXOOXXOXXXXOXXXOXOOOXOXXXOOOOOOXOXXOXXOXXXOOOXOXXXOXOOOOOOOOOOXXOOXOOXOOXXOXXOXXXXOXOOXOXXXXOXOXXXOXXOXXXXOOOOXXOOXXXOXOXOXOXOOXXOXOOOOXXXXXXXXXOXXXXOOOOOOOOOOXOXXXXXOXOXXXOXXXXOXXOXXXXXXXXXXXOOXXXOOXOOXXXXOXXOXOOXOXXXOXXXOXXXOXXXOXOXOXXOOXOXOXXOOXOXOOOOOXOXXXXOXXXOXXOXOXXXOOOXOOOXXXOXOXXXXOOOXXXXXOOOOOOXOOXOXOXXOOOOOXXXOXOXOXOOOXOXOXXXXOXXOOXXXXOXXOOXXOXOXXXXXXOOOXXXXXXXXXOOOXOXXXXXXXXXXXXXOXOXXOOOXXOOXXOXXXOOOXOOXXOOXXOXOXOXXOOXXOXXXXOOOXOXXOXXOXOOOOXXXXXOOOXXOXOOOXOXOXXOXOOOXOXXOXOXOOXOOXOOOXOXXOOOXOXXOOOXXOOOXXXOOXOXOOXOOXOXXXOOOOXXOXXOOXXXXOOOOXXOXXOXXXOOXOOXXXXOOXOOXXXOXOXXXOOOOOOXOOXOOOOXXXOXOXOXOOXOXOOOXOXXOXXXOOXOXXOXOXOOXOXXOOXXXXXX';\r\nd='OXXXOXXOXOXXOOOOOXOOXXOXOXOOOOOXOXOOXXXOOXOOOXOXXOXXXOOXOXXXOOXOXXXXXOOOXXXOOOOXOOOOOOOOOXXOXXOXXOOXXOXOXXXOXXOXOOXXXOXXXOXXXXXXOOOOXOXXXXOOOXXOOOOXOOOXXXXOXXXXXXOXXOOOXXOXXXXOXOXXOXXXOOOOOXXXOOXXXXOXOOOXXOXXOOXXOOXOOXOXOOOOXXXOOXOOXOOOXXXXXOXOOXXXOOOXXOOOXXXXOOXOXXXOXOOOXXXXOOOXXOOOOXXXXOXXXXOXXOXOOXOXXOOXXXOOXOXXOXOOOXOXOXXXXOXXOXXXXXOOOXOOOXXOXOXOXOXOXOXXOXOOOOOXOOXXOOOXXXOXXXXOOXOOXOXOOXOXOXOOOOXXXXOXXOXXXXXXXOXXXOOXXOOXOXXXXOXOXOOXOOXOXXOOXXXXXXXXXOOOXOXXOXXOXXXOOOOOOOOOXOOOOOXXXOXXXOXXXOXOOOXXOXXOXOXOXXXXOXOXXXXOXOOOOXOXXOXXXXOXXOXXXXOOXXXXOOXOXOOOXXXXXXXXXOOXXOXOXXOXXXOXOOOXXOOXXXXXOXXOXOOXOXXXXOXOOXOOOOOXOXXXOXXXOXOXXOXXXXOOXXOXOOXXXOOXXOOXOXXOXOOOOXOOOXXXXXOXXXOXXOXXOOOXXOXXXXOXXOOXOXXOOOXOXOXOXOXOXOXOOOXOOXOOXXOOXOXOXXXXOXXOXOOOOOOOOOOOOOXXXOOOXXOXXXXOXXOXOXOOXOOXOOXOXOXXOOXOXXXXXOXXOOXOXXOXOXOXXOXOXOOXOXOXOXOOOOOOXOOXOXXXOOOOOOXXXXXXXXOXXXXOXXXXOXOOXXXOXXXOOOXXOXOXXOOOOOOOXOXXXOXXXXOXXXOOXOXOOOXXOXOXOOOXXXXXXOOOOXXOOXOXXXXXXXXXOOXXOXOOXXXOXOOOXXXOXXOXOOOOXXOOOXOOOOOOXXXXOXO';\r\ne=27;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%30\r\ni='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO';\r\nd='OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';\r\ne=999;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OOOOXXOOOO'; %31\r\nd='XOOOOOOOOX';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":3097,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":8,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2013-04-21T20:43:53.000Z","updated_at":"2013-04-21T21:37:42.000Z","published_at":"2013-04-21T21:37:42.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\u003eThis Challenge is to solve the\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=\\\"http://contest.usc.edu/index.php/Spring13/Home\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eUSC Spring 2013 ACM Contest\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e Problem F, Snow Cones.\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\u003eSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O. Input is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child.\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\u003eDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e From XXO to OXX \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\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e From OXOX to XOXO \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\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 1\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\u003eOnly two competitors solved this challenge.\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\u003eA little complex requiring a Matlab 3-Liner solution versus\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=\\\"http://contest.usc.edu/index.php/Spring13/Home?action=download\u0026amp;upname=cones.zhengcao.cpp.txt\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eCao's C solution\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\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":2223,"title":"Cumulative difference","description":"Given an array, return the cumulative difference.\r\n\r\nExample\r\n\r\n a = [ 1 3 5 7 ]\r\n cumdiff = [ 1 2 1 -2 ]\r\n\r\n","description_html":"\u003cp\u003eGiven an array, return the cumulative difference.\u003c/p\u003e\u003cp\u003eExample\u003c/p\u003e\u003cpre\u003e a = [ 1 3 5 7 ]\r\n cumdiff = [ 1 2 1 -2 ]\u003c/pre\u003e","function_template":"function y = CumDiff(x)\r\n  y = x;\r\nend","test_suite":"%%\r\nx = [1 3 5 7];\r\ny_correct = [1 2 1 -2];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [23 3 15 16];\r\ny_correct = [23 -20 -11 -25];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [5];\r\ny_correct = [5];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = 43:49;\r\ny_correct = [ 43   1   -42   -86    -131   -177   -224];\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = zeros(0,1);\r\ny_correct = zeros(0,1)\r\nassert(isequal(CumDiff(x),y_correct))\r\n\r\n%%\r\nx = [1 10 100 1000 10000];\r\ny_correct = [1 9 89 889 8889];\r\nassert(isequal(CumDiff(x),y_correct))\r\n","published":true,"deleted":false,"likes_count":1,"comments_count":0,"created_by":16381,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":74,"test_suite_updated_at":"2014-02-26T21:46:35.000Z","rescore_all_solutions":false,"group_id":1,"created_at":"2014-02-26T21:25:13.000Z","updated_at":"2026-03-31T12:46:07.000Z","published_at":"2014-02-26T21:40:51.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 an array, return the cumulative difference.\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\u003eExample\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:p\u003e\u003cw:p\u003e\u003cw:pPr\u003e\u003cw:pStyle w:val=\\\"code\\\"/\u003e\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003e\u003c![CDATA[ a = [ 1 3 5 7 ]\\n cumdiff = [ 1 2 1 -2 ]]]\u003e\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\"}]}"},{"id":1161,"title":"Binpack Contest: Retro","description":"The \u003chttp://www.mathworks.com/matlabcentral/contest/contests/3/rules Full Binpack Rules and examples\u003e.\r\n\r\nThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\r\n\r\nBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\r\n\r\n*Input:* [songList, mediaLength]\r\n\r\n*Output:* indexList\r\n\r\n*Example:*\r\n\r\nInput:  [ 0.5 2 3 1.5 4], [5.6]\r\n\r\nOutput: [4 5]  as 1.5+4 is very near and below 5.6.\r\n\r\nThe answer of [1 2 3] is also valid and also gives 5.5.\r\n\r\n*Scoring:* 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\r\n\r\n\r\n*Warning:* Matlab 2013B may produce time slowing error messages versus 1998 code.\r\n\r\n","description_html":"\u003cp\u003eThe \u003ca href=\"http://www.mathworks.com/matlabcentral/contest/contests/3/rules\"\u003eFull Binpack Rules and examples\u003c/a\u003e.\u003c/p\u003e\u003cp\u003eThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\u003c/p\u003e\u003cp\u003eBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e [songList, mediaLength]\u003c/p\u003e\u003cp\u003e\u003cb\u003eOutput:\u003c/b\u003e indexList\u003c/p\u003e\u003cp\u003e\u003cb\u003eExample:\u003c/b\u003e\u003c/p\u003e\u003cp\u003eInput:  [ 0.5 2 3 1.5 4], [5.6]\u003c/p\u003e\u003cp\u003eOutput: [4 5]  as 1.5+4 is very near and below 5.6.\u003c/p\u003e\u003cp\u003eThe answer of [1 2 3] is also valid and also gives 5.5.\u003c/p\u003e\u003cp\u003e\u003cb\u003eScoring:\u003c/b\u003e 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\u003c/p\u003e\u003cp\u003e\u003cb\u003eWarning:\u003c/b\u003e Matlab 2013B may produce time slowing error messages versus 1998 code.\u003c/p\u003e","function_template":"function indexList = binpack(songList,mediaLength) ;\r\n  indexList=[];\r\nend","test_suite":"%%\r\nfeval(@assignin,'caller','score',100);\r\n%%\r\na{1} = [4.3078    2.5481    1.4903    5.4302    3.4142    2.9736    3.3768 ...\r\n        2.1612    3.3024    0.3269    2.6761    4.2530    2.6648    1.9644 ...\r\n        3.3389    22.122    4.1015    3.2104    2.3945    4.7151];\r\na{2} = [1.2671    3.1377    4.0687    4.1459    3.6469    6.1881    8.2452 ...\r\n        7.3962    9.7071   10.4798   11.4082   12.2282   12.6320   13.9705 ...\r\n        13.8851   15.6195   17.0187   18.5778   18.4140   20.0473];\r\na{3} = [1.6283    6.0703    8.1323    2.6226    3.1230    3.0081    6.1405 ...\r\n        1.1896    4.2769    5.0951    6.4869    3.9215    2.5858    4.7130 ...\r\n        4.5529];\r\na{4} = [40:-1:1]+.1;\r\na{5} = [1.0979    3.5540    1.8627    0.0849    3.2110    3.6466    4.8065 ...\r\n        3.2717    0.1336    2.5008    0.4508    3.0700    3.1658    0.8683 ...\r\n        3.5533    3.7528    2.7802    4.2016    1.6372    9.6254    1.3264 ...\r\n        0.3160    4.3212    3.0192    0.7744    2.3970    1.7416    2.4751 ...\r\n        1.0470    1.9091];\r\na{6} = [1 1 2 3 5 8 13 21 34]+.1;\r\na{7} = [0.8651    3.3312    0.2507    0.5754    2.2929    2.3818    2.3783 ...\r\n        0.0753    0.6546    0.3493    0.3734    1.4516    1.1766    4.3664 ...\r\n        0.2728    20.279    2.1335    0.1186    0.1913    1.6647    0.5888 ...\r\n        2.6724    1.4286    3.2471    1.3836    1.7160    2.5080    3.1875 ...\r\n        2.8819    1.1423    0.7998    1.3800    1.6312    1.4238    2.5805 ...\r\n        1.3372    2.3817    2.4049    0.0396    0.3134];\r\na{8} = [pi*ones(1,10) exp(1)*ones(1,10)];\r\na{9} = [1.6041    0.2573    1.0565    1.4151    0.8051    0.5287    0.2193 ...\r\n        0.9219    2.1707    0.0592    1.0106    0.6145    0.5077    1.6924 ...\r\n        0.5913    0.6436    0.3803    1.0091    0.0195    0.0482    20.000 ...\r\n        0.3179    1.0950    1.8740    0.4282    0.8956    0.7310    0.5779 ...\r\n        0.0403    0.6771    0.5689    0.2556    0.3775    0.2959    1.4751 ...\r\n        0.2340    8.1184    0.3148    1.4435    0.3510    0.6232    0.7990 ...\r\n        0.9409    0.9921    0.2120    0.2379    1.0078    0.7420    1.0823 ...\r\n        0.1315];\r\na{10}= [1.6041    0.2573    1.0565    1.4151    0.8051    0.5287    0.2193 ...\r\n        0.9219    2.1707    0.0592    1.0106    0.6145    0.5077    1.6924 ...\r\n        0.5913    0.6436    0.3803    10.091    0.0195    0.0482    20.000 ...\r\n        0.3179    1.0950    1.8740    44.999    0.8956    0.7310    0.5779 ...\r\n        0.0403    0.6771    0.5689    0.2556    0.3775    0.2959    1.4751 ...\r\n        0.2340    0.1184    0.3148    1.4435    0.3510    0.6232    0.7990 ...\r\n        0.9409    0.9921    0.2120    0.2379    1.0078    0.7420    1.0823 ...\r\n        0.1315];\r\na{11}= [40*ones(1,50) ones(1,20)]+0.05;\r\na{12}= 4.3 + sin(1:100);\r\n\r\nmediaLength=45;\r\n\r\nfor j=1:20 % warm-up\r\nfor i=1:12\r\n   songList=a{i};\r\n   indexList = binpack(songList,mediaLength) ;\r\nend\r\nend\r\n\r\n\r\nnet_gap=0;\r\nt0=clock;\r\nfor j=1:100\r\nfor i=1:12\r\n   songList=a{i};\r\n   indexList = binpack(songList,mediaLength) ;\r\n   indexList=unique(indexList); % No dupes\r\n   total(i)=sum(songList(indexList));\r\n   if total(i)\u003e45+1.5*eps(mediaLength) % Rqmt \u003c= 45\r\n    total(i)=-Inf;\r\n   end\r\n   net_gap=net_gap+45-total(i) ;\r\nend\r\nend\r\ntte=etime(clock,t0);\r\nfprintf('Total Time E %f\\n',tte)\r\nfprintf('Totals: ');fprintf('%.4f  ',total);fprintf('\\n')\r\nfprintf('Net Gap: %.2f\\n',net_gap)\r\n%format long\r\nfprintf('Performance: %.4f\\n',net_gap/(12*45))\r\nfprintf('Score=150*net_gap/(12*45)+3*time: %.3f\\n',150*net_gap/(12*45)+tte*3)\r\n\r\nScore=150*net_gap/(12*45)+tte*3;\r\n\r\nassert(Score\u003cInf)\r\n\r\n\r\nfeval( @assignin,'caller','score',floor(min( 100,Score )) );\r\n\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":5,"created_by":3097,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":13,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2013-01-02T05:26:53.000Z","updated_at":"2026-03-16T11:34:27.000Z","published_at":"2013-01-02T05:58:44.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\u003eThe\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=\\\"http://www.mathworks.com/matlabcentral/contest/contests/3/rules\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eFull Binpack Rules and examples\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:t\u003eThis Challenge is a replay opportunity of the First Matlab Contest, 1998 BinPack.\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\u003eBrief Challenge statement: Pack a 45(mediaLength) minute CD as maximally as possible given a list of songs of varying lengths. No penalty for unused songs. No song duplication allowed. Return the indices of the songs used.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e [songList, mediaLength]\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e indexList\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eExample:\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: [ 0.5 2 3 1.5 4], [5.6]\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\u003eOutput: [4 5] as 1.5+4 is very near and below 5.6.\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 answer of [1 2 3] is also valid and also gives 5.5.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eScoring:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 150*Gap/(12*45)+Time*3 (cases are repeated 100 times to get a time)\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eWarning:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e Matlab 2013B may produce time slowing error messages versus 1998 code.\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\"}]}"},{"id":59871,"title":"List the segmented numbers","description":"The sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \r\nWrite a function that returns the nth segmented number.\r\n--------------------\r\nI now realize that this problem is similar to Cody Problem 42832 by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. ","description_html":"\u003cdiv style = \"text-align: start; line-height: 20.4333px; 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: 400; text-decoration: rgb(0, 0, 0); white-space: normal; \"\u003e\u003cdiv style=\"block-size: 174px; display: block; min-width: 0px; padding-block-start: 0px; padding-top: 0px; perspective-origin: 407px 87px; transform-origin: 407px 87px; vertical-align: baseline; \"\u003e\u003cdiv style=\"block-size: 63px; 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; perspective-origin: 384px 31.5px; text-align: left; transform-origin: 384px 31.5px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\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: 361.308px 8px; transform-origin: 361.308px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eThe sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \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; 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; margin-right: 10px; \"\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: 172.95px 8px; transform-origin: 172.95px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eWrite a function that returns the nth segmented number.\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; 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; margin-right: 10px; \"\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: 46.6667px 8px; transform-origin: 46.6667px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e--------------------\u003c/span\u003e\u003c/span\u003e\u003c/div\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; perspective-origin: 384px 21px; text-align: left; transform-origin: 384px 21px; white-space-collapse: preserve; margin-left: 4px; margin-top: 2px; margin-bottom: 9px; margin-right: 10px; \"\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: 131.858px 8px; transform-origin: 131.858px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003eI now realize that this problem is similar to \u003c/span\u003e\u003c/span\u003e\u003ca target='_blank' href = \"https://www.mathworks.com/matlabcentral/cody/problems/42832\"\u003e\u003cspan style=\"\"\u003e\u003cspan style=\"\"\u003eCody Problem 42832\u003c/span\u003e\u003c/span\u003e\u003c/a\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: 172.692px 8px; transform-origin: 172.692px 8px; unicode-bidi: normal; \"\u003e\u003cspan style=\"\"\u003e by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. \u003c/span\u003e\u003c/span\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e","function_template":"function y = segmentedNumbers(n)\r\n  y = 1:n-sum(1:n);\r\nend","test_suite":"%%\r\nassert(isequal(segmentedNumbers(1),1))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(2),2))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(3),4))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(10),21))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(25),50))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(59),154))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(343),991))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(815),2521))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(1663),5590))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(4521),16617))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(7532),28755))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(8000),30731))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(15532),62744))\r\n\r\n%%\r\nassert(isequal(segmentedNumbers(segmentedNumbers(7900)),127328))\r\n\r\n%%\r\nfiletext = fileread('segmentedNumbers.m');\r\nillegal = contains(filetext, 'assignin') || contains(filetext, 'assert') || contains(filetext, 'read'); \r\nassert(~illegal)\r\n","published":true,"deleted":false,"likes_count":0,"comments_count":2,"created_by":46909,"edited_by":46909,"edited_at":"2024-04-24T01:55:04.000Z","deleted_by":null,"deleted_at":null,"solvers_count":7,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2024-04-13T14:29:06.000Z","updated_at":"2025-07-17T22:35:51.000Z","published_at":"2024-04-13T14:32:46.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\u003eThe sequence of segmented numbers begins 1, 2, 4, 5, 8, 10, 14, 15, 16. Notice that none of the terms is the sum of consecutive previous terms. The number 3 is not in the sequence between it is 1+2; 11 is not in the sequence because it is 2+4+5, and 12 is not in the sequence because it is 1+2+4+5. \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\u003eWrite a function that returns the nth segmented number.\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\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:t\u003eI now realize that this problem is similar to \u003c/w:t\u003e\u003c/w:r\u003e\u003cw:hyperlink w:docLocation=\\\"https://www.mathworks.com/matlabcentral/cody/problems/42832\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eCody Problem 42832\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e by HH. That one involves restrictions on the number of terms in the sum, whereas this one asks for larger values of n. \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\"}]}"},{"id":1440,"title":"USC Spring 2013 ACM: Snow Cones","description":"This Challenge is to solve the \u003chttp://contest.usc.edu/index.php/Spring13/Home USC Spring 2013 ACM Contest\u003e Problem F, Snow Cones.\r\n\r\nSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O.\r\nInput is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child. \r\n\r\nDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\r\n\r\n\r\n*Input:* From XXO to  OXX   *Output:* 2\r\n\r\n*Input:* From OXOX to XOXO  *Output:* 1\r\n\r\nOnly two competitors solved this challenge.\r\n\r\nA little complex requiring a Matlab 3-Liner solution versus \u003chttp://contest.usc.edu/index.php/Spring13/Home?action=download\u0026upname=cones.zhengcao.cpp.txt Cao's C solution\u003e ","description_html":"\u003cp\u003eThis Challenge is to solve the \u003ca href = \"http://contest.usc.edu/index.php/Spring13/Home\"\u003eUSC Spring 2013 ACM Contest\u003c/a\u003e Problem F, Snow Cones.\u003c/p\u003e\u003cp\u003eSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O.\r\nInput is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child.\u003c/p\u003e\u003cp\u003eDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e From XXO to  OXX   \u003cb\u003eOutput:\u003c/b\u003e 2\u003c/p\u003e\u003cp\u003e\u003cb\u003eInput:\u003c/b\u003e From OXOX to XOXO  \u003cb\u003eOutput:\u003c/b\u003e 1\u003c/p\u003e\u003cp\u003eOnly two competitors solved this challenge.\u003c/p\u003e\u003cp\u003eA little complex requiring a Matlab 3-Liner solution versus \u003ca href = \"http://contest.usc.edu/index.php/Spring13/Home?action=download\u0026upname=cones.zhengcao.cpp.txt\"\u003eCao's C solution\u003c/a\u003e\u003c/p\u003e","function_template":"function swaps=snowcones(v1,v2)\r\n% v1 is a string of Xs and Os (not zeros)\r\n% v2 is string of desired sequence\r\n swaps=0;\r\nend","test_suite":"i='X'; %1\r\nd='X';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XO'; %2\r\nd='XO';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XO'; %3\r\nd='OX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XX'; %4\r\nd='XX';\r\ne=0;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXO'; %5\r\nd='XOX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXO'; %6\r\nd='OXX';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XOX'; %7\r\nd='OXX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXXXOOOO'; %8\r\nd='OOOOXXXX';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XOXOXOXO'; %9\r\nd='OXOXOXOX';\r\ne=1;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOXXO'; %10\r\nd='XXOXXOO';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOOOOXX'; %11\r\nd='OOXXXXOO';\r\ne=3;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOXOXOXOXOX'; %12\r\nd='XXOOXXOXXOXOO';\r\ne=2;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXXOOXOXOXXXO'; %13\r\nd='OXOOXXOXXOXXX';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOOXXOXXOXXX'; %14\r\nd='XXXOOXOXOXXXO';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOOOOOXOXOXXXXXOOXX'; %15\r\nd='OXOOXXOXXOOXOXOOXOXX';\r\ne=5;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOXXXXOXXOXXXXXXXXX'; %16\r\nd='XXXXXXXOOXXXXXOXXXXX';\r\ne=5;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXOXOOXXOOXOXXOXOXOO'; %17\r\nd='XOXOXXOXOXOOOXOXOOOX';\r\ne=3;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OXXOOXXXOOXXXXXXOXXX'; %18\r\nd='OXOOXOXXXXXXXXXXOOXX';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='XXOXXXXXXXOXXXOOXXOO'; %19\r\nd='XXOXXOXOXXXXOOXXXXXO';\r\ne=7;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%20\r\ni='XOOXXXXXOXXOXOXXXOOOXXOOXXOOOXXXXOXXXXOOOOXOXXXXXOXOOOOXXOOOXOXOOXOXOOOOOOXOOOXOOXXXXXXXOXXOXXXOXXOXOOOOXOOXXXXOXXXXXXXXOOOOOXOXOXXXOXXOOOXOXXOOOOOXOXXXOXXOXOXOOOOXXOOXXOXOOOOXOOXOOXXOOXXOOOXOXOXXXXOOXXXXXOOXOOXOXXXXXXOOOOOXOXXXOOOXOOOOOOXXOXOOXXOOOOXXXOXOXOXXXOXOOXXOXXOXOXOXXOXOXOOOOXXOXXOXXXXOXOXXOXOOOOOXOXXOOXOOXXXOXOXXOXXOXXXXXOXXOOOOOOXOOOOXOOOOXOXOXXOXOXXXOXOOOOXXOXXXOXXXOXXOOXXXOOXOXXOOXOOXOXOOOOXOOOOXXOXXOOXXXOXXOOXXOXOXXXOXOOOXXOXOOXXOOXOOOXXOOXXOXOXOXOOOOOOXXXXOXXOXOOXOXXOOOOXXXOOOOOOOOXOOOOOOXXOXXOXOOOOOOXOOOOOXOOXXOOXXOXXXOXOXOXXXOOOOOOXXOOOOXOXOXOOXXOOXOXXXOXOOXXOXOXOOXOXOXOXOXOOOXOOXXXOOOXXXOXOOOXOXXOXXOXXOXXXXOXOOXXOXOXXOOOXXXXXOXXXXOOOOOOOOXXOOXOOOXXXXXOOOXOOXOOOOOXXOOXXOOXXOXXXOXOXOXOOOXOXXOXXOOOOOXOOOOXXXOOXXXOOXOXOXXXXXOOXXOXOOOXOOOXXXOXXOXOXXOXOXOOXOOXXXOOXOOXOXOOXOOOOOOOXXOOOOOOXOOOOOOXOXXXXOOXOXOOXXXOXOXXOXOOOXOOOOOOXOOXOXOOXXOOXOOXXOXOXOOOOOOOOXOXXOXXXXOXXXOOXXOXOOXXXOXOXOOOOXXOXXOXOXXOXOXOOXXXOXXXOOXOOOXOOOXXOXXOOXXXXOXOOXOXOXXOOXXOXXXXXXXXXXOXXOOOOXXXOOXXOOXOOX';\r\nd='OXXXXOOOOXXOOOOXOXXOXOXXXOXXOOOXXOOOXXOXOOXXXOOOOOXOOXOOXXOOXOOOXXOXOOXXXOXOXOXOOOOOOOXOXXXOOXOOXOXXOXXXOXXXXOXXXOOXXXXOXXXOOXOXXXOOXOXXOXXOXOOOXXOOXXXOOXXXXXXOOXXXOXOXXOOOOOXOXOOXOOOOXXXOOOXXXXXOOXOXXXOOOOOXOOOOXXXOOOXXOOOOOOOXOOXXOOOOXOXXXXXOOXOXOXOXOOOXOXOOXOOXOOXXXOOXXXXOOOXXOXXOOXOOOOXOOOXOXOOXOXOXOXXOXXOOOOOOOXOXXOXXOOXOXOXOXXOXXOOOXOOOOOOOOOXOOXXOXOXXOOOOOOXOXOOOOOXXOXOXOXXOXOXXXOOOXXOOXXOXXOXOXXOXXXOOOOOXOOOOOXXXXXOXXOXOOXXOXXXXXOOOOOXOXOXOOXXOXOOXXOXOXXOOXOOXOXOXXOXOOOXXXOXXOXXOOXXXXXXOXOXOXOXXXOXXXOOOOOXXXXOXXXOXOXOOXOXOOXOOOXOOOOXOOOXXOXXXXOXXXXOOOOOXOOOOOOXXOOXOOXXXOXOXOXOXOXOOOOOXOOXXXXOOXOXXOXOOXOOXOXXXXOOOOXXOOXOXOOXOOXOOOOXXXOOOOOOOOXOOXXOOXXOOOXOOXXXXXXOOOOXOOOOXXOXXXXXXOXXXOXOXXXOXXXOXOOOXXOOXOOOOXOOOXOXOXOOOXXXOXOOXOXOOOXXXOOOXXXOXXOOOOOOXOXXOXXOOXXOOXOXOOOXXXOOOOOXXOOXXOXOXXXOXXOXOOXXOXOOOXXXOXXOOXOXXXOXXOXXOXXOOXXXXXOXXOXOOOOOXOXXOOOXOXOOOOXXXXXOOXOOXXOXXXXOXOOXXOXXXOOXXOXOXXOOXOXOOOOXXXXXXXOXOXXOXXXXXOOOOXOOXOXOXOOOXXOXOXOOOOXOXOOOXXOOOXXXOXXOXOXXXXXXOXOXOOOOXOOXX';\r\ne=47;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%21\r\ni='XOXXOXXXOXOOXXOOOXXXOOXXOOOXXOOXXOOXXOXOXXOOXOXXXOOOXOXXXXOOOXXOOXOXOXXOOOOXXOOOOXOXXOXOXOXOXXOXXXOXXXOOXOOOXXXOXOXXOOOOOXOXXOXXXXXOXOXXXXXOXXOOXXOXXXOOOOXOOOOOOXXXXXXXXOXXXOOXXOOOXXXXXOOXXXOXXOOXXXXXOXOXOOXOXOOXOOOOXOOXXOXXOOXXOOXXOXXXXXXOOXOOXOXOOOXXOOXXOOOOOOXXXXOOXOXXOXOOXXOOXXXOXXXOOOXXOOXOXXXOOXXOOOOOOXOXXXOXOOOXOOXOOXOXOXXOXOOXXOOXXOXXXOXOOXOXXOOOXXXXOXXOOXOOXXXOXXXXXOXOOOXOOOXXOXOXXXXOOOXXXXOXOOXOXOOXOXOXXXOXXXXXXOXOOXOOXOOXXXOXOOOOXXXXXOXXXXOXOXXOOOXOOOOOOOOXXXOXXOOXXXXOXXOOXOXXXOOOXOOXOXXXOXOXXXXXXXOOOXOOXOXXXXOXXOOOOOXOOXOXOOXXXOXXOXXOXXXXXOOXOOOOOXOOOXXOXOXXOOOOXXOXXXXOOOOXOOXOXOOOOXXXOXXXXXXXOXOOXOXOOXOOXOOXXXXOXOOOXXXOXXXXOOOOOOXXOXOXXOXOXXXXOXXOXXXOXOOXXOXXXXOXXXOXOOOXOOOXXOXOXOOOXXOOOOOOXOXOXOXXXXOXOOOXXOOXOOXXXOXXOXXXOXOXXOOOXXXOOXOOXXOOOOOOOOOXXOOXOXXOOOXOXOXOXXXOXXXOOOXOXOOXOOXOXXXOOOOOXOOOXXXOXOXOXOOOOOXXOXXXXXOXXOXXXXXXXOOOOOXXXOXXOOXOXOXXOXOXOOXOOXXXOOXXXXOOOOXXOOOOOOXOOOXXOOXOXOOOOOOXXXOXXOXXOOXXOXXXXXOOOOXOXOOXOOXXOOXXXOXXXXXOXOXOXOOOOOXXOXXXOOOOOOXXXOXOXXOOXXOO';\r\nd='XXXXOXOXOOXXXOOOXXXOXXXOXXXXXOOOXOOOXXOOOOXOOOOOOOOOXXXOOXOOXXXXOXXOXOXXXOXOXOXOOXOOOXXOXXOXOXOXXXXOOOOXXOXXXOOOXOXXXOXOOOOXOXOOOXOOOOXXXOOOOXOOOOXOOXOXXOXXOOXXOXOXXXOOXOXOOOOXOOXXXOXOOOOOOXOXOXXXXOOXXXOXXOXOXXOXOOOXOXXOOXXOXXOXXOXXXXOOOXXXXXOOOOXOXXXXOOOOOXOOOXOOXXXOOOOOOOOOOOXOOOOOOOXOXXOXOOXOOXXXOXXOXXOOOOOXOOOXXOXXXOXOOXOOOOOOOXXOXXOXOXOOXXXOOOXOOXXOOXXXXXOOOOOXXOOOOOXXOXXOXXXXOXXXXXOXXXXOOXXXOXXXXXOXOOXOOOOXXXOOOOXXXOXOOOXOXOXOXOOXOXXXXXOXXXOXOOXOXOXXXXOXOOXOOOXXOOXXOXXXXXXXOXXXXXXXOOXXXXXXOXXOXXXOOXOOOOXXOOOOXOXXXXXOOOXOXXOOXOXOXXXXOOXOOXOOOXXOOOOOXOOXOOXXXXOOXXXOOOXOOXOXXXOXOOXXXXOXXXOXOXXOXXXXOXXXXOOOXXXOOXXXXOOXXOXOOOOXXOXXXXOOXOXXXXXOOXXXXOOXXXXXOXXXOXXOXOOXOXXXOXOXXOOXOXXXOXOOOOXXOXOOXXOOOXOXXOXXOOXXXOOXOOOOXOOOXXOXOXOXOXOXOOXXOOXXXXXXXOOOOOXXXXOOXOXXXXXOXOXOXXXOOXOOXXXXOOXXOXXOXXXXOOXOXXOOXXXXOOXOOXOOXXXOXOOOXOOXOXXXXXOOOOXOOOXOOXOXXOOOXOXOXOOXOXXXOXOOXXXXXXXXXOOXOOXOOOXXOXXOOOXXXOXXOXXOOOXXOXOXOXOXXXOOXOOXXOOXXOOXOXOOOXXXOXOOXOXXOXOOXXOOOOXOXXOXOOOXXOOXOOOOXXXOOXXOXOXOOXOX';\r\ne=60;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%22\r\ni='XXXXOOOXXOXXOXXOOXOXXOXOOOXOXOOXXXOOOOOXXOOXXOXOOOXXOOOOXOOOOXXXXOXOOOOXOXXOOOOXOOXOXXXXOXOXXOXOOOOXXXOXXOOOOXOOXOOXXOOOOOXOXOOXXXXXOXXXOXXXOOXOOOOXOXXOOOXXXXOOXOOOOOXXOXOXOOXOOOXOXOXXXXXOOOXXXOXOOXXOOXXXXXOXXXXOOXOXXXXOXOXXOOOOOXOXXXXXXOXXOOOXOOXXXOOOXXOOXOOXXOOOOXOXOOXOOXXXOXXXXXOOXOXOXXXXXXXXOOXOXXOOOXOXOOXXOOOOXOOOOOXOOXXOOXOOXXXOXXOOXXOXOXOXOXXOXXOXXOOOXXOOOXOXOOOOXOOOOXOXXXOXOOOOXXXXXXXXOOXXOOOXXOOXXXOOXXXXXOXXOXOXXXOOOXOOXXOXXOXOXXOXXOOOXOXXOOOXOXXXOXXXOOXXOXXXXXXOOXXXXXOOOOXOXOXOXOOOXOOOXXXOXOOXXXOOXXXOOOOOXXOXXOXXOOXOXXXOOOXXXOXXXOOOXXXXXXXOOOXOOOXXXXXXOXXOXOXXOOOXXOOXOOOXOXOOOXOXXOXXOXOOXOOXOOOXOOOOXOXOXXOOOXOXOXOXXXOOOXOOOXOOXXXOOXOXOXXOOXXXOOOOOOXXXXXXXOOOXXOXOXXOOOXOXOXXOOOOOOXXXXXXOOXOOXXXXOOOOOOOXOOOOXXXXOXOXOOXOXOOOOXOXXXOOOOXXOXOXOXOOXXOOOOOOXXOOOOOXXXXXXOOXOOOOOOXXXOOXXOXXOXXOOOOOXOXOXXOXXOXOXOOXXXOOOOOXOOXXXOXOXOOOXXOXOOOOOXXOXOOOXOXXOOXOXXXOOXXOXXXXXOXOOOXXOXXOOOOOXXXOXXOOOXOOOXOOXOOXXOXXXOXXXOOXXXXOOXXXOOXXXXOXXXXOXXXOOXXOXOOXXOOXOXOXXOXXOXOOXOOOXOXXOOOOOOOXOOOOXOX';\r\nd='OXOXOXXOXXXXOOXOOXOOXXOXXOOXOXXXXXOOOXXOXOOXOXXOXXOXXOOXXOXXOXOOOXOOOOOOXXOOOOXOXXOOXOXOXXOXXXXOXOXOOXOXXXOXOOOXOXOXOOOOOOXOXOOOOXXOOOOXOXOOOOXXOOOXXOXOXOOXXOOXOOOOXXOOXXOXXOOXXOOOOXOXXXOXXXXOOXXOXXOOOXOXXXOOXXXOOXOXOOOXXOOXOOXXXXOOXXOOOOOXOOXOXXXXXOOOXOOXXOOOOOXXXXOXOXXXXOXXOOXOOOOXOOOOOXXOOXOXOOOOOXOOXXXOOXXOOOOOXXXXOXXXOOXXXXOXOXOOXXXOXOXOXOOXOOXOXXOOXOOOOOOOXXXOOXOXOXOOOOOOXOXXOOXXOXXXXOXOXOOOXOXOXOOOXOXOXOXXXXXOOOXXXOXOXOOXXXOXOXOOOOOOOXOOXXXOOXXXOOOOXOOXXXOXOOOOXOOOXXOXOOXXXXXXOXOOXXOOXXXXXOXXXXXXOOOXOXOOOXOXOXXXXXXXOXOOXXOOXXOXXOXOOXXXXOOXOXOOOOOOXOXXOOOXOXXXXOXOXXOOXOOXXXOOOOXOXOXOXXXOOXOOOXXOOOXXOXXXXXOXOXOOXOXOOOXOXXXOOOXOXOOOXXXOXOXOXOOXOOXOOXXOOXXXOOXOOOOXXOOOXXXXOOXOOXXXXOOXXOOXOOXXOOXXOOXOOXXOXXOXXXOXXOOXXXOOOXXOOOOXOXOXXOXOXOXXXOOXXXXOXOXXXOOOXXXOOXOOXOOXXXXOOOXXOOOOOOXXXOOOXOXXXOOOXOOXXXXOOXOXXOXXOOXOOXXXXXOXXXXXOOXOXXOXXOXOXOXOXXXOOXOXOXXOOOOXXOOOOOOOOOOXOOXOOOXXXOXXXXXOXOXXXOOXOOOOOOXXXXXXXOXOOOXXOOOOXXXXOXOXOXXOOXXOOXXOXXOXOXXOXXXXXOXXOXOXXXOOOOXXXOXOXOXOOOOXXOXOOXXO';\r\ne=47;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%23\r\ni='OXXXXOOXXXOOOOOOXXXOOXXXOOOOOXOOOOXOOXXOXOOXOOXOXOOOOOOXXXOOXOOXXXOOXXOXOOOXXOXOOOOOOOOXXOOXOXOXXXOXOOOOOXOOXXOOOOXXOXOXXOXOXOXXOXXXXOXXXOXOXXXXXXXOXXOXXXOXXXOOOOXOXOXXOOOXXXXXOOOXXXOXXOXOOXXOXXXOXOXOOOOXXXOOXXOOOOOOXOXOOOXXXXOXOXOXXXOOOOXOOOXOXOXOOOXOOXOXOOOXOOOXXXOOOXXXXXXOXXXOXOXOXOOOOXXOXOOOXXOXXOOOXOOOXOOXOOOXXOOXXXXXOOXOXXXOOOXXXOOXXXXXXOXXOOOOXXOOXXXXXOOXXXOXXXXXXXXOOOOOOXOXXOOOOOXXXOXXOOOOXOOOXXOXOXXOXOOOOXXOOXOXOOXXOXOXOXOOXOOXXXXXOOXXOXXXXXOOXXXXOXOOOOXXXXOOXXXXOOOOXOOOOOOOOXXXOXXXXOOXXXOXXXOOXOXXOXOXXXXOXXOOOOOXOOOOXXOOOXOOXXXOXOXXOOXOOXXOOXXOXOXXXXOXOXXXXOXXOXXXOXOOOOOOOOOXOOOOOOXOXXXOXOXOXXXXXOXOXOXOOOXOOXXOXXOXXOXXXOOOXXOOOOXOXOXXOXOOOXXOXXXOOXXOOXOXXXXOXXXOXXXXOXXXXXXOOXOXOXXXOOOXXXOXOOXXOOOOOXOXOOXOXOXXXOOOXXXOXOXXOOOXOOXXOOXOOXOXOXXOXXOOOXXOXOXXXXXXXXOOXXOOOXXOXOOOOXOOOOXOOOXXXXOOOOXOOXXOXXOXOOOXOXXOOOOXXOOOOXOOXXXXXOOXOOXXOXOXOOXXXOOXXOOXXOXXOXXOOOXXXOXOOOXOXOXXOXXXXXXOXOOXXOXXOOXXOOXOXXXOXOOOOXOXOOXXOXXOXXOOXOXXXXOXOXOOOOXOOOOXXXOOOOXXXXXXXXOXXOXXOXXXXXOXXXOXXOOXXXXO';\r\nd='XXOOXXOXOOXOOOOOXOXXXXXXXOOOXXXOOXOXOXOOOXXOOXXXOOXXXXOOOOXOOOOXOOOXOOXOXXOOOOOXXXOXOOXOXOOOOXOOOXXOOXXOXOXOXOXXOOOXXOOXOXOXOXXXOXXXXOOXXXXOXXXOXXOXXXOOXXXOXOXXOOXXOXXOXOOOOOXXXOOOXOXOOXXXXOXXOXXOXOXXOOXXOOXXXXXOXXXOXXXXXXOOXOOOOXOXOOXOOOXOXXXOXOXOOXOOXXXOXXXXXXXXOXXXOOOXXXXXXOXOOXXXOXXXOOXOXXOOXXOOOOXOXXXOOOXOOXOXOOOXXXOOXXXOOOOOXOOXXOXXOOXXXXXXXOOXOOOXXXOXXXOOXOOOOOOXOXXOOXOOOOOXOXXXOXOXOOOOXXOXXXXOOOXOXXOOXXXOXOXXOOOXXXOXXXXOXOOOOXOXXXOXOXOOXOOXOXXXOXOXXOXOXXXXXOXOOOXOXOOXXXXXOOOXOXXOXXXXOOXOXOXOXXOOOXXXXOOOOOOOOOOOXOOXXOOOOOXXOXXOXXOOOOOXXOXXXXOOXOOXXOXOXOXXXXXOOXOOOOOXOXXOXXXXXOXXOXOXXOOXOOXXXXXOOOOOXOOOOXOXOOOXOXXXOOOOXXOOXOOOOOOXXOXXOXOOOOXOOOXXXXOXXXOXOXXOXXOXXOOXOOOXXXXXXXOXOXXXOOOOOXOOOXXOXXOOOXXOOXXXOXXOXOXXXOOOOOOXXOXOOXXOXXXOXOXXOXOOOXOOXXOXXOXXXOXXOOOOOXOOXOXXXXXOXOXOXOOOXXXOXOXOXXOOXOOOXXOOOXXXOOOOOOOOOOOOXXOOOOXXOOXOOOXXOXOXXOXOXXOXXXOOOXXXOXOOXOOOXXOOXXXOOOOOXXXXOXXOXXXOXOXXXOXXXOXOOOOOXOXXXXXXXOXOOXOXOXXXOXXXXOOXOOXOOXOOOXXOOXXOXOXOOXOXXXOOXXOXXXXOXXXOOXXOOXOXXOXOOXOX';\r\ne=42;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%24\r\ni='XOOXXOOXOOOXOOOOOXOOOXXOXXOOOXOXXOOOOXXXOXOOOXXXOXOOXXXOOXOOXOXXXOOOOXOXXOOOXOXXOXXXOXXXXXOOOOXXXOXOOOXOXXXOXOXXOOOOOOOOOOOOOXOXOXXOOXXOXXOXXOOXXOXXXOXOXOXXXXXXOXXOOXXXOXOXXOXXXXOOXXXXOXOXXOOOXOXXOXOOOXXOXOXXXXXOOOOXXOOXOXOOXXXOOOXOOXOOXOXXOOOOOOXXXOOOOOOXXOOXOXXOOXXXXOXXXOOXXOOOOXXOXXXOOXXXOXXOXOOXXXOXXXXOXXXOXXOOXXOXXOXXXXXOXXOXXOOXOXOXXOXOXXOOOXOXXOXXOOOOOOOOOOOXXOOOXOXXOXXXXXOXOOXXXOOOOXOXOXOOXOOOOOOXOXOOOXOXXOXOXXOOXOOOXXOXOOXOXXXXXXOOXOXOOOXXOOOOXOXOXXOXXXOOOXOOXOOXOOXXXXOXOXOOOXXXOOXOOXOXXOOOXXXXXXOXOXOXXOOOXXXOOXXOXOXOOOOOXOOXOXXOXOXXXOXXOXXOXOOOOXOXXOXOXXOOXXXOOXXXXXXOXXXXXXOXOOXXXXOXXOXXXOOOXOXOXXOOOOOOXOOOXXXOOXOOXOOOOOOXXXXXOXXXXXXXXXXXOOOXXOOXXXOOXXOOOXOOXOOXOXOXOOOOXOOXOOXXXXOOOXOXXXOOOOOXXOXXXXOXXOXOOXOXXXXOOXXOXOOOXXOOOOXXOXXXOOOXXOXXXOOOOOOXOOXOOXOXXXOOXXXXOOXXOOXXOOOXOOOOOXOXXOOOXOXXXXXOOOOOXXXXOXOOXXOXOXOOXXXXOOXOXXXXXXXOXXOXOOXXXXXXXOOXXXXOOOXOXOOOXXXXOXXXXXXXOXOXXXXXXOXXXOOXOOXXXOXOXXXXOOXXXXXOXOXXOOOOXXOOOXXOXOOXOXXXOXOOOXXOXXXXOOXXOXOOXOXXXXXOXOXXXXXOXOXOXOXXXOXO';\r\nd='OOXOXXXXOOOOOXXXOXXXOXOXOOOOOOXXXOOOXOOXXXOOOXOXOOOXOOXXXXXXXXXXXXOXXXOXXOOXOOXOOXOXXXXXXXXXOXOOXXOXXOOOOOOOXXXOXOOXXXOXXXOOOXXOOOXXOOXOOXOOOXOOXOOOOOXXXXXXOXXXOOXXXXXXXOXOOXXOOOXOXOXOOXXXXOXOOXXOOOOOXXOOXOXOXXXOOXOXOOOOOOOXXXOOXOOXXOXOOXOOOOXXOOXOXOOOXOXXOOXOXXOXXXOXOXOXXOOXOOXXOXOOXXOXXOOXXOOOXXOXXOXOXXXXXXOXXOOXOOXOXOXXXXXOXXOXOXXOOOXXOXOXOXOOXXXOOXOOXOOXXXOXXXOOOOXOXOOXOOOOOOOXXXXXXOOXOOOOOOXXOXXOXXXXXXXXXOXXXXOOXOXXOXXOOOXXOOXXXXXXOOXXOOXXXOOOOXXOOXXXOOXXOXXXOOOOOXOOOXXXOXOOXOXXOOXXXXOOOXXXXXXXXXOXXXXOXXOOOXOOXXOXXXXOOXXOXOXXOXOOXOXXXOXXXXXXXOXOXXOXOXOXOXOXXXXXOXOOOOXXXXOXOOOXXXOXOXOXOOXXOXXXOXOXXXOOXOXXOXOOOXOXOOXXOXXOOOXOOXXOOXOOXOOXXXXXOXOOXXOXOXXXOXOOOXXXOXXOXOOOXOXXOXXXXOOXOOXOXOOOXXOXOXXOXXOXXOOXXOXOOOOOOOXXXXOOOXXOXOOOXOOOOXXXXOXXXOXOOOOXOXXXOOXOXOOOXXOXXOOOXOXXXXOOXXOOXXXOOOXXXOOXOXXXXOOXXXXXXXXOXOXXXOOXOOOXXXXXXOOXOOXXOOXOXOOXOOOXOXXXXOOXXXXXXOXXOXXXOXXOXXXOOOOOOXXOXOXXOOOXXXOXOOOXXOXOOOXOXOOOOXOOXOXOOXXXOOXOOXXXOOXOXOOOOOOOOOOOXXOXOOXOOXXOXOXOOXXOOXXXOXOXXOXXOXXOXOOXOOXO';\r\ne=64;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%25\r\ni='XXXOOOOOOOXXOOXXXXOOOXOOOXXXOOXOOXXXXXOOXXXXXOXOOXXXXXOXXOOOXXOXXXOXXOXOOOXXXXXXOXXXOOXXXOXOXXOXOOOXXOOOOXXOOOXXXXXXXXXOXOOOOOXXOOOXOOXOXOXOOXXXOXXOXOXOOOXXOOOXXOXXXOOOXXOOOXOOOXOOXOXXOOXOXOXOOOXOOXXOXOOXXOOOOOOOXOXOXOXOOOOXOXOXOXOXOXXOOOOOOOXOOOOXOOXXXOOOXXOOXOOXXOOOXXOOOXOXXOOOOXXOOOXXOOXXOOOOXXOOOXOOOXXXOOXXXXXXOOXXOOXXOXXOOXXXOOXXOOOOOOOXOXOOXXXOXXOOXXXOOOXOOOXOOOXOOXXOOOXOOOOXOXXXOXOXOXXOXOOXOXXOOOOXOOOOOXOXOOXOXXXOXXXXXOXXOOXOXXOOOXXXXXXXXXXXXOOOXOXOOXOOOXXOOXOOOXOOOOXOOOXOXXXXXOXOOOXXXOXXXOOOXOOXOOOXOXOXXOXXOOOOXXXOOXOXOOOXOXXOOXXXXOOXOXOXOOXXXOXOOOOXOXOOOXXXOXXXXXXXXXXXXXOOOXXOXXXOOXOOXOXXOOOXXOOOOXOOOXXOOOXXXOOXXXOOOXXXXOOOOXXOOXXXOXOXXOXOXXXXXXOOOOOOOOXXOOOOOOXXOXOOOXXXOOOOOOXXXXXXXOOXOOXXOOOXXXXOOXXXOOOXOXOOXOXOXXOXXXXOOXOXXXXOOOXOOXXXXOOOXOOXXOXOOXXOXXOOOOXXOOOXXXXXXXXOOXOXXOXXXOXXOOXOXOOOOXXOXOXXOOXXOOXOOOOOOOXOOOXOXOOOXXXOXOOXOXXOOXOXXOXOXXXXOXOOOXXOOOOOOXOXXXOOXXOXOXOXOXOOOXOXXXOXOOXOOXXXOXXOXOOXOOXOXXOOOXXOXOXXXOOXOXOOOXOOXOOOOXXXXOXXXXOXOOOXOOXXXXXOOOXXOXXXOXXOXOOXOOO';\r\nd='XXOXXXXOXOOOXOOOXOXOOOOXOOOOOXXXXOXXXXOOOXXOOXOXXOOOXOXXOXXOXXXOOXOOXOOOXXXXOOOOOOOOXXXXOOXXXXXXOXOXOOOOOXXXOXOOXXOXXXOXXOXOXOXXOOOXXXXOOXOXXXOXOOXOXOOXOXXOXOOXXOOXXXXOOOXXOXOXOOOOOOXXXXOXXXXXOXXOOOXOXXOOOOOOOOXOOOOOOXXXOXOOOOOOOXOOOXXXXOOXOXXXOOOOOOOOOXXXXOOOOXXOOOOOOXOOOXOXXXOOOXXXOOOXXOOXXOOOOXXXOXOOXOXXOXXOXXOOXXOXOOXOXOXOOXXOOOXXXXOXXOXOXXXOXXOXOOXXXOXOXXOXOXXOXOOOXXXOOOOXXXXOXOOOXOXXOOOOOOOOOOOXOOXOXOOXXOXOXXOOOOOXXXOXOXXXOXXXOOXXOOOOXOOOOOXXXXOOOXXXOXXXOOXOXXXOXOXOXXXXOXXOOXXOXOXOXOXOXXXOOOXXOOOXOOXOOOXXOOOXOOOXXOXXXXOOOXOOXOXXXXXOOOXOOOXOOXXXXXOXXOXOXXOOXOOOOXXOOOXOOOOXOXXXOOXXOXXXOOXOXOOOOOXOXXXXOXOOOOOXXXOOOOOOOXXOXXOXOXOOOXXOXOOXOOOOXXXOOXXXXOXXOOOOOOOXOXOXOXOXXXOXOOOXOXOXXXOXXXXXXXXXOXXOXOOOXXXXOOOOXXOOXXOOXOXXOXOXXXXOXOOXOXOOOXXXOOOXOXOXXXXOOOXXOXXOXXOXXOXXXOXXOXXOXXOXXOOOXOOXXXXOOOOOXOXXXXXOOOOXOXXXOXXOXOXXXOOXXOOXOOXOOXOOXOOOXOOXXOOOXXXXXOOOOXOOXOOXXOOXXXXXXOOXXOXOXOXXXOXOXOOOXOXXXOOXXOXXXOXXXOOOOOOOOXXOXXXOXOOXOOXOXXOXOXOOOOOOXOXOXXOOXOOOOXOOXXOXOOOXXXOOOOXOXXOXXOXOOXO';\r\ne=23;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%26\r\ni='OXXOOOOOOXOOOOOXOOXXXXXOXXOOOXOOXXXOOXOXOOXOXOOOXXXOXOXXOOOOXXXXOOXOOXXXXXXOXXXOXXOOXOOXXOXXOXXOXXOXOOOOXXXXXOOOOXXOXXOOOOOOOXXXOOXXOOOXXOOXXXOXOXOXXXOXOOOOXXOXOXXOXOOOXOXXXOOXXXOXXXOXXOOXOXOOOOXXXOXOOXOXXXXXOXXOOOOOOXXXXOOXOXXXXOXOOOOOXXOXXXXXOOXXXXOXOOXXXOOOXXXXOXOXXXOOXXOXOXOXXOOOXXOOXXXXOOXXOOXOXXXXXXOOXXOXOXOXXOOXOOXXOXOOOXOOXXOOXXOXXOOXOOOOOOOXOXOOXOOOOOOXOXXOXXXXOOOXXXXXXXXOXOOXXXOXOOOOOOXOOOOOOXXOOXOOXXOXXOXXOOXXXOXOOXOOXXXXXOOXXXOXOXOXXOXOXOXXXXOXXOOXOXXXOOXXXXOOOXXOXOXXOOXOXXXOXXXXOOXOXOOOXXXXXXOXOOOXOOXXXOXOOOOXXOOOOOOOXOOOXXOOXXOOXOOOOOXXXOXOXOXOOXOXOOXXOOOOOXOOOOOXOOOOXXOOOOOXXXOXXXXOOXXOXOOOXXOXXXXOOXXOOOOOXOOOXXOXOOOOXOOXOOXXOXOXXXXXXXXOOXXOXXOOOXOXXOOOOXOOXOOXOXOXOOOXXOXXXOOOOOXOXXXOXOOXXOXXXOOOXXXXOXXXOXXOOOOXOXXXOXXOOOOOOOXOXOXXXOOXOXXXOXOOOOXXXXOXXXXXXXOXXXXOXOXOXXOXOXOOXOXXXOXXOXXXOOXXXOXOOOXXXOXOOXXOXOOOOOOXXOXOXXXOXOXOOOOOOXOXXOOXOXXOOOOXOOOOXXOOXOOXXOXXOXOXXOOOOXXOXXOOXXXOOOXXXOOXXOOXXOOOXXOXXOXXXXOOXOOXOOXXOOOXXXOXXOXXOOXOXOOXXOOOOOOXXOXOOXXOOXXXXOOXOXXOXOXXOXX';\r\nd='XOOOOXXOXXXOOXXOOOXOXOXXXXOXOOXXXXXOXOXOXXXXOOOOXOOOOXOOXOXOXXXXOOOXOXXOXOOXXOOXOOXXOOXOXXOXXXOOOOXXXXOOXOXXOOOXXXXXOXXOXXOXOOXOOOXOOOXOOOOOXOXOOOXXOOXXXXXOOOOOOXXXXOOOXXXOOOXXXOXOOXXOXXOOOOOOXOXOOOXXXXOXXXXXXXXXOXXOXOXOXXOOXXXXXOOXOOOOXOOOOOXOOOOOXOXXOOOXXXXOOXXXOXXOOXXOOOOOOOOXXXXOXOOXXOXOXOOXOXOOXXOOOXOXXOXOXXOXOOOXOXOOOOOXOXXOOXXXOOXOXOOOOOXXXOXOXXXOOOOXXXXOXOOXXOXXXOOOXXOXXOOXXOOXOXXOXOXXXXXXOOXOXXOXOXOOOXXOXXOXOXOOOXOOXOOOOOOXOOOOOXXXXXXOOXXXOOXXOXXOOOOXXXOXXOXOXOXOOOOXXXOOXOXXOOOXOOXOXOOOXOXOXXOOXXOOOXOXOXOXXXXOXOXOOXXXXXXOOXOXXOXOXOOOXXXOOOOXXOXXXOXOXXOXXOOOXXXOOXOOXOXXXXOOXOOOOXOOOOOOXXOXXXXOOXOXXXXXXOXXOOXOOOOXXXXOXOOXOOOOOXXXXXOOOXXOXXOXXXXXXXXOOXOOOOOXXXXOOOOOXOXOXOOOXOOOOXOOOOOOXXXXXXOXOXOXXOOXXXOXXOXOOXOXXOOXXXXXOXOXXOXOOXXXXXOOOXOOOXXOOOXOXOXOOOOXOOXXXXOXOXOOXOXXXOOOOXXOXXXXXXOXXOXOXOXXXXXXXXOXOXXXOOXXOXXOOXXXXXXOXXXXXOXOOOOOXXOXOOXOXXXXXXXOXXOXOOOXXOOXXXOOXXOOOXXXXOOOOOOXOOXOOOOXOOOXOXOOXOOOXOXXXOOXOXOXXXXOXOXOOOXOOOXXXOOOXXOXXXXXOXOOOOXOOOOOXXXXOOOXXOXOXXXOOXOOOOXXOOX';\r\ne=38;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%27\r\ni='XOXOXOOXOXXOXXOOXXOOOXOOOXOOXOXXXXXXXXOXXOOOOOXOOXOXXOXOXXOOXXOOOOXXOXOXOOXOXOOXXOOOXOXOOXOOXOOOOOOOOXXXXOOOOXOXXXXXOOXOOOOXXOOOXXXOOOXXXXOOXOXOXXOOOXXOXXXOXOXOOOOXXXXXOXOOOXXXXXXXOOOOXXOXOOXXXOXXXOXXOXOOXXXOXOXXOOXOXXOXOXOXOOXOOOXXOXXXOXXXXOXXOOOOXOOOOXXXXXXXXOXXXOXXXOXOOOXXXXOXXXOXOXXXXOXOOXOOXOXXXXXXOOXOXOXXOOOOOXXOXOOXXOOOOXOXXOOOXOOOOXOXXOXOXOOOXXXOXOXOOXOOXOOXOXXXXXOOOXOOXXOOXOOXOOOXXXOOXXOXOOXXXXXOXXXXOXXOXXOOOOOXXXXOOOXOXXXOOOOXOXOOXXOXOXOXOXXOOXXOOXOXXOXXOXOOXOOXOXOXXOOXXXOXXXXXXXXXXOXOXXXOXOXXXOXXOXXXOOXOXOOXOXOOXXOOOXOXXOXOXXOOXXOXOXXOXXOXXXXOXOXOXXOOXOOOXXOXOOXOOXXXXXOXOOOXXOOOOOXXXXXOXOXXOXOOXOXOXXOXOOXXOOOOOXXOXXXXXOOOXOOXOOOXOXXXXOXXXXOOXXXXOXXOXXXXXOOXOOXOXXOXOOXXOOOOOXOOXOXOXXXOXXXOXOXXXOXOXXOXXOXOXOXXOXXXOXXXXOOXXXOXXOOXOOOXOXOOOXOOXXOXXXXOOOXOOXOOOOOOOOXXOOXXOXOOOOXXOOOXOXOOXOOXXXXOXOOXXXXXXXOXOXOXXOXOXXOOXOXOXOXXXOOXXOOOOXOOXOOXXXOXOXOOOXXOXOOXXXOXXOXOXOXOXXOXOOOOXXOOOOXXXXXOOXXXOOXXOXXXXXOXOOOXXOXOXOOXXOOOXXXOOOOXOXXXOXXXOXOXOXOOOOOXXXOXXXOOXOXOXXOXOOOXXXXOOXXXXOO';\r\nd='XXXXXOXOXXOOXXXOXOXOXXOXXOOXXXXOOXOXOOXXXXXXXXXOXOOXOXOOXXOXXXXXXOOXOOOOXXXXOXOOXOOOXOOXOXOOXOOOOOOXOXOXOXOOXXOXXXXXOOOXXXOOOXOXOOXOXXOOOOXXXXOOXOOXOOOXXXXOXOOOXOXXXOOXOXOXXOOOXXOXOXOXOOOXOOXOXOXOXXOOXXXOXOOOOXOXXOXXXXOOXXXOXOXOXOXOXXXOXXXXXXXXXXXOXXOXOOOOXXOOXOOXOXXXXXOOOXXOOXOOOOOOOOXOXXOOXOXOXOXOXOOXXXXOXXOOXXXXXXXXOOXXXOOOOOXOXXOXXOOOOXOXXXXOOXOXXXOOOOOXXXOOOOOXOXXXXOOXXXXXXOXXXXXXOXXOXXXOXXOXXXXXOXXOXXOOXOXOOOOOXXOOXXOOXXXXOOOOOOOOOXOOXXXXOOXXXXOXOOOOOOXXXOOOOXXOXOXXOOXOXOXOOOXXXOOOOOOOOOXXOXXOXOOXXXOOXXOOXXXOOOXOOOXXOOXOXOXXOXXXXOXXOXOXOXXXOOOXXOOXXXOOOXOOOOOOXOOOOXOXOXXXXOOXOXOXOXXOOXOXXOXOOXXOXOOXXOOXXXXXXOOOOOXOOXXOXXXXOOXOOXXXXXXXOXXOXXOOXOXOXXXXXOXOOXXOOOOXXOOXXXOOXXOXXOOXXXOXOOOXOXOXXOOXXXOXXXOXXXOXOXXOXOOXOOOXXOOXXXXXOOOXXOXXXXXXXXXOXOOXXXOOXXXXOOOXXOXXOXXOXOXOOXXXOOXXOOOXXOXXOXXXOOOOXOOOXOXOOXXOOOXOXOXXXXXXOXOOOOOOOOOXXOXXOOOOOOOXOXXXOXOXOXXOXXOOXXOOXOXOOOXOOOOOXXOXXXXXXOOOXXXXOXXXXXOXXXXXOXOXXXOOOXXOOOXXOXXXOOXOOOXXXOOOXXOOXOOXXOOXXXXOOOXOOXOXOOXOOXXOXOXXOOXXXXXXOOOOOOX';\r\ne=36;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%28\r\ni='XXXXOXOOXXOOXOXXOXOXOOXXXOXOXOXOOOOOXOOOXXOOXOOXOXOXOOXOOXXXXOOXXOOXXOOOOXOXOXOOOXOXXXOOXXXOXXOOXXXOXOOOOOOOOXXOXOXXOOOXOXOXXOOOXOXXOXXOOOOXOXXXXOXOOOXOXOOOXXOXXXOXXXOXOXOXXOOOOXXXXXXOXOOOOXOXOXXXXOXOXOOOOXOOOOOOOOOOOXOXXXOXOXOXXXOXOOOOOOXXXXOXOOOOOOXXXXOXXXXXOXOOOOOOOXXXOOOOOXOOXOXXOOXXOOOXOXXXOXOOXXOOXXOXXXOOOOXXXXXOOXXOOXOOOXOOOXXXXXOXOOXOOOXOXOOOXXOOOOXXXOXXOXOOOXOXOOOOOOOXXXOXXOXXOXXOXXXOXOXXOXOXOXXOXOOXOXXOXOOOXOOOOXOXOXOXOXXXXXOXXOXOOXXXXOXOOXOOXOOOOOXXXXXXXOXOOOXXOOOOOXXXXXOXXXXXOOOXXOXOXOOXXOOXOXOOXXOXOXOXXXXOXOXXOOOXOXOOOOOOXOXOXXXXOOXXOOOOXOXOXXOOXXXOOOXOXXXOXOXXXOXXOOXOXOOOOOXXXOOXOXOOXXXOOOOXOXXXXOOOXXOXOOXOOXXXXOXOOXXXXOOXOXXOOOXOOXXXOXOXXXXXOOOOOXXXOXOOOOXOXOOOOOXXXXXXOXOXOXXXOOXOOXOXXOXXXOXXOOOOOXXXOXOXOOOOOXXOXXXOOXXXXXOOXOOOOOOXXXOOOXXOXOOOOOXXOXOXOXXXOOXXOXXXOOOOXOOOXOXOXOXOXOXOXXOOOXXXOXOOOXXOOXXXXOOOOXXOOXOOOOXXXOXXXOXOOOOOOXXOOOOOXOXXXXOXOXXXOOXOOOOXXOXOOOOOXOXOXOXXOXXXXOOOXXXXOOOOXOXXXOOOXXXXOOOXOXXXXXOOXXXXOXXXXOXXOOXOXOOOXOOOOXOOXOXOOXXXXOOXOXOXXXXOXOOOXOOOOOO';\r\nd='XOOOXXXOXXOXXOOXOOXOXOXXOOOOOOXOXXXXOOOOXXOOXOOXXOOOOXXXOOOXXXXOOOOOOOOXOXXXOXOXXOXOOOOOXOXXXXXOOOOXXOOXXXXXOXXXXXOXXXOXOOOOOXOOOXOXXXXOXXXXXOOOXOOXOXXOOOXXOXOXOOOXXXOOOXOOXOOOXXOXOXXOOOXOXOXXXOXXXXXOOOOXXOXOOXOOOOXXXXXOOOXXOXXXXOXOXXXXOXOOOOOXOXOXXOXOXOOOXOXOXXOXXXXOOXXOOXOOOOOXOXOXXXOOXOXXOOOOXOXXXXOOXXOXOXOXXXOXOXXOXXXXXXOOXXOOOXXXOOXOXOXOOOOOXOXOXXOOOOXXXOOOXXOOOXOXOOXOOXOXOOXXOOOXXXXOOOOOOOXOOOXOOOOOXXXXOXOXOXXOXOOXXXXOOXOXOXXOXOOXOOOXOXOXOOXXXXXOXXXXXXOXOOOOXXXOOOOOXXOXXXXXOXXOXXXOOOXOOOXOOXOXXXXOOXXOXOOXOOOXOOOOXOXOXXXOXOOXOOXOXXOOXOXXXOXOOOOOOOOOOXOOOXOOXXOOXOOXOXOOOXXXOXXXXOOXOXOXOOXXXXOOOXOXXXOOXOXOXXXOOXXXXOXXXXXOXOXOXOXXOOXOXXOXXOOXXOOOOOXOXXXXXXXXOXXOOXXXOXXOOOXOOOOOOOOOXOXOOOXXXXXOXOOOOOOXOXOXOXOOOOXXOOOXOOOOOXXOXOOOXOOXXOXOXOOOXXXOOOXOOXOOOOXXXXXOOXXOOXXXXXOOOOOXOXOOXOXOOXOOOXOOOXXOOXOOOXOOXXOOXXXXXXOOXOXOOOOXXXOOXXOXOOOXXOXXOXOXXOXOXXXOOXOXXXOOXXXXOXXOOXOOOXXOXOOOXXXXXXOXXOOOXOOXOOOXXXOOOOOXOOXXXXXOOXXXOOXOOXXOOXOXOOOXOXOOOXOXXXOXOOXOOXXOOXOOOOOOXXXOXXOXOXOXOXOXXOXXOXX';\r\ne=32;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%29\r\ni='OXXOOOOXOOOOXXOOXXXOXOOOOOOOXOOOXOXXXOXOXOXOXXXOXXOOXOXOXXXOOOXOOXXXOXXXOXXOXXXOXXOXXOOXXXOXOOXOXOXXXXXOOOOXOOOOOOOOXXXXOXXOOOOXOOOXOOXXOXOOOOXOOOXXXXOXXXOXOXXXOXOOXOXOOXXOOOOXXOOXXOXOXXOXXXOXOXOXOXOOOOXOOOXOXOXOXXXXOXXOOXOOXOOXXXXXXOXXXOXXOOOXXOXXOXXOXXXXOOOXOXOOOXOOOOOOOXXOXOXXOXOOXXXXXXXOOXXXOOOXXOOOXOOOXXXOXXXXXOXXOXXXOXOOOXXXXOOXXXXOOOXOXOXXXOXOOXXOXXXXOXXXOXOOOXOXXXOOOOOOXOXXOXXOXXXOOOXOXXXOXOOOOOOOOOOXXOOXOOXOOXXOXXOXXXXOXOOXOXXXXOXOXXXOXXOXXXXOOOOXXOOXXXOXOXOXOXOOXXOXOOOOXXXXXXXXXOXXXXOOOOOOOOOOXOXXXXXOXOXXXOXXXXOXXOXXXXXXXXXXXOOXXXOOXOOXXXXOXXOXOOXOXXXOXXXOXXXOXXXOXOXOXXOOXOXOXXOOXOXOOOOOXOXXXXOXXXOXXOXOXXXOOOXOOOXXXOXOXXXXOOOXXXXXOOOOOOXOOXOXOXXOOOOOXXXOXOXOXOOOXOXOXXXXOXXOOXXXXOXXOOXXOXOXXXXXXOOOXXXXXXXXXOOOXOXXXXXXXXXXXXXOXOXXOOOXXOOXXOXXXOOOXOOXXOOXXOXOXOXXOOXXOXXXXOOOXOXXOXXOXOOOOXXXXXOOOXXOXOOOXOXOXXOXOOOXOXXOXOXOOXOOXOOOXOXXOOOXOXXOOOXXOOOXXXOOXOXOOXOOXOXXXOOOOXXOXXOOXXXXOOOOXXOXXOXXXOOXOOXXXXOOXOOXXXOXOXXXOOOOOOXOOXOOOOXXXOXOXOXOOXOXOOOXOXXOXXXOOXOXXOXOXOOXOXXOOXXXXXX';\r\nd='OXXXOXXOXOXXOOOOOXOOXXOXOXOOOOOXOXOOXXXOOXOOOXOXXOXXXOOXOXXXOOXOXXXXXOOOXXXOOOOXOOOOOOOOOXXOXXOXXOOXXOXOXXXOXXOXOOXXXOXXXOXXXXXXOOOOXOXXXXOOOXXOOOOXOOOXXXXOXXXXXXOXXOOOXXOXXXXOXOXXOXXXOOOOOXXXOOXXXXOXOOOXXOXXOOXXOOXOOXOXOOOOXXXOOXOOXOOOXXXXXOXOOXXXOOOXXOOOXXXXOOXOXXXOXOOOXXXXOOOXXOOOOXXXXOXXXXOXXOXOOXOXXOOXXXOOXOXXOXOOOXOXOXXXXOXXOXXXXXOOOXOOOXXOXOXOXOXOXOXXOXOOOOOXOOXXOOOXXXOXXXXOOXOOXOXOOXOXOXOOOOXXXXOXXOXXXXXXXOXXXOOXXOOXOXXXXOXOXOOXOOXOXXOOXXXXXXXXXOOOXOXXOXXOXXXOOOOOOOOOXOOOOOXXXOXXXOXXXOXOOOXXOXXOXOXOXXXXOXOXXXXOXOOOOXOXXOXXXXOXXOXXXXOOXXXXOOXOXOOOXXXXXXXXXOOXXOXOXXOXXXOXOOOXXOOXXXXXOXXOXOOXOXXXXOXOOXOOOOOXOXXXOXXXOXOXXOXXXXOOXXOXOOXXXOOXXOOXOXXOXOOOOXOOOXXXXXOXXXOXXOXXOOOXXOXXXXOXXOOXOXXOOOXOXOXOXOXOXOXOOOXOOXOOXXOOXOXOXXXXOXXOXOOOOOOOOOOOOOXXXOOOXXOXXXXOXXOXOXOOXOOXOOXOXOXXOOXOXXXXXOXXOOXOXXOXOXOXXOXOXOOXOXOXOXOOOOOOXOOXOXXXOOOOOOXXXXXXXXOXXXXOXXXXOXOOXXXOXXXOOOXXOXOXXOOOOOOOXOXXXOXXXXOXXXOOXOXOOOXXOXOXOOOXXXXXXOOOOXXOOXOXXXXXXXXXOOXXOXOOXXXOXOOOXXXOXXOXOOOOXXOOOXOOOOOOXXXXOXO';\r\ne=27;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\n%30\r\ni='XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO';\r\nd='OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';\r\ne=999;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));\r\n%%\r\ni='OOOOXXOOOO'; %31\r\nd='XOOOOOOOOX';\r\ne=4;\r\nswaps=snowcones(i,d);\r\nassert(isequal(swaps,e));","published":true,"deleted":false,"likes_count":0,"comments_count":0,"created_by":3097,"edited_by":null,"edited_at":null,"deleted_by":null,"deleted_at":null,"solvers_count":8,"test_suite_updated_at":null,"rescore_all_solutions":false,"group_id":1,"created_at":"2013-04-21T20:43:53.000Z","updated_at":"2013-04-21T21:37:42.000Z","published_at":"2013-04-21T21:37:42.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\u003eThis Challenge is to solve the\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=\\\"http://contest.usc.edu/index.php/Spring13/Home\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eUSC Spring 2013 ACM Contest\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\u003e\u003cw:r\u003e\u003cw:t\u003e Problem F, Snow Cones.\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\u003eSummary of Challenge is to Swap the Snow Cones in the minimal number of swaps so the children all have their selected flavor. There are only two flavors, X and O. Input is the string of distributed Cone flavors and a string of desired Cone flavors. Adjacent children may exchange cones but in any one round a child may only swap with one other child.\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\u003eDetermine minimum number of Swap rounds to convert the Distributed to the Desired Cone flavor sequence.\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:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e From XXO to OXX \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\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 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\u003c/w:pPr\u003e\u003cw:r\u003e\u003cw:rPr\u003e\u003cw:b/\u003e\u003c/w:rPr\u003e\u003cw:t\u003eInput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e From OXOX to XOXO \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\u003eOutput:\u003c/w:t\u003e\u003c/w:r\u003e\u003cw:r\u003e\u003cw:t\u003e 1\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\u003eOnly two competitors solved this challenge.\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\u003eA little complex requiring a Matlab 3-Liner solution versus\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=\\\"http://contest.usc.edu/index.php/Spring13/Home?action=download\u0026amp;upname=cones.zhengcao.cpp.txt\\\"\u003e\u003cw:r\u003e\u003cw:t\u003eCao's C solution\u003c/w:t\u003e\u003c/w:r\u003e\u003c/w:hyperlink\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:\"cumsum\"","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:\"cumsum\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"cumsum\"","","\"","cumsum","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f234a857a90\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f234a8579f0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f234a857130\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f234a857d10\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f234a857c70\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f234a857bd0\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f234a857b30\u003e":"tag:\"cumsum\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f234a857b30\u003e":"tag:\"cumsum\""},"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":"cody-search","password":"78X075ddcV44","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:\"cumsum\"","current_player":null,"sort":"map(difficulty_value,0,0,999) asc"},"parser":"MathWorks::Search::Solr::QueryParser","directives":{"term":{"directives":{"tag":[["tag:\"cumsum\"","","\"","cumsum","\""]]}}},"facets":{"#\u003cMathWorks::Search::Field:0x00007f234a857a90\u003e":null,"#\u003cMathWorks::Search::Field:0x00007f234a8579f0\u003e":null},"filters":{"#\u003cMathWorks::Search::Field:0x00007f234a857130\u003e":"\"cody:problem\""},"fields":{"#\u003cMathWorks::Search::Field:0x00007f234a857d10\u003e":1,"#\u003cMathWorks::Search::Field:0x00007f234a857c70\u003e":50,"#\u003cMathWorks::Search::Field:0x00007f234a857bd0\u003e":"map(difficulty_value,0,0,999) asc","#\u003cMathWorks::Search::Field:0x00007f234a857b30\u003e":"tag:\"cumsum\""},"user_query":{"#\u003cMathWorks::Search::Field:0x00007f234a857b30\u003e":"tag:\"cumsum\""},"queried_facets":{}},"options":{"fields":["id","difficulty_rating"]},"join":" "},"results":[{"id":2223,"difficulty_rating":"easy"},{"id":1161,"difficulty_rating":"easy"},{"id":59871,"difficulty_rating":"medium-hard"},{"id":1440,"difficulty_rating":"unrated"}]}}