Bạn đã lưu ngày với mã trình tự chính của bạn , và giáo viên toán yêu thích nó. Nhiều đến mức một thách thức mới được đặt ra cho người thủ thư (a / k / a, sếp của bạn). Xin chúc mừng, bạn có thể viết mã giải pháp để người thủ thư có thể một lần nữa gây ấn tượng với giáo viên toán.
Bắt đầu với dãy số tự nhiên trong cơ sở 10, N
0, 1, 2, 3, 4, 5, 6 ...
Không bao gồm 0
và 1
, mọi số trong dãy này đều là số nguyên tố, P
2, 3, 5, 7, 11, 13 ...
hoặc hỗn hợp, C
4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20 ...
Phản ánh về cách người thủ thư nghĩ cách chèn một chữ số nguyên vào phần mở rộng thập phân của một số từ P , giáo viên toán thay vào đó đã tạo ra một hàm G (x, y) lấy một số x
từ N với 1 <= x <= 9
và một số y
từ C và chèn x
vào mở rộng thập phân y
ở mọi vị trí, theo thứ tự từ trái sang phải, chỉ chọn các số duy nhất.
Ví dụ: G (3,14) là 314, 134, 143
. Tuy nhiên, G (1,14) chỉ là 114, 141
, cho dù bạn trả trước hoặc chèn 1
vào 14
, cùng một số 114
được tạo.
Giáo viên toán đã tự hỏi bạn phải thực hiện những hoán vị này bao nhiêu lần trước khi bạn nhận được một số trong P , nếu bạn thực hiện x
theo thứ tự tăng dần. Giáo viên toán học gọi đây là Chỉ số tổng hợp của một số và viết nó là CPI (y) .
Ví dụ: 4
chỉ cần thực hiện hai lần : 14, 41
, vì 41
là số nguyên tố, nên CPI (4) là 2
. Tuy nhiên, 8
cần phải được thực hiện 6 lần, 18, 81, 28, 82, 38, 83
trước khi đạt được 83
số nguyên tố, vì vậy CPI (8) là 6
.
Nhiệm vụ của bạn là viết mã sẽ xuất ra Chỉ số tổng hợp này , được cung cấp một số đầu vào.
Đầu vào
- Một số nguyên duy nhất
y
, như y
trong C , nhập thông qua đối số hàm, STDIN hoặc tương đương.
- Đối với mục đích tính toán, bạn có thể giả sử
y
sẽ phù hợp với các phạm vi số nguyên thông thường (ví dụ: giả sử 2 31 -1 là giới hạn trên).
- Hành vi
y
không trong C là không xác định.
Đầu ra
Các kết quả Composite-Thủ Index , được tính như mô tả ở trên, sản lượng để STDOUT hoặc tương đương, với hai trường hợp ngoại lệ:
- Nếu cuối cùng hoán vị (ví dụ, phụ thêm
9
để y
) là một trong những có kết quả trong một số nguyên tố, đầu ra -1
. Một ví dụ, mở rộng dưới đây, là y=14
.
- Nếu không có hoán vị (nghĩa là G (x, y) là tập con của C cho tất cả
1 <= x <= 9
), đầu ra 0
. Một ví dụ, mở rộng dưới đây, là y=20
.
Ví dụ
y -> operations : output
4 -> 14, 41 : 2
6 -> 16, 61 : 2
8 -> 18, 81, 28, 82, 38, 83 : 6
9 -> 19 : 1
10 -> 110, 101 : 2
12 -> 112, 121, 212, 122, 312, 132, 123, 412, 142, 124, 512, 152, 125, 612, 162, 126, 712, 172, 127 : 19
14 -> 114, 141, 214, 124, 142, 314, 134, 143, 414, 144, 514, 154, 145, 614, 164, 146, 714, 174, 147, 814, 184, 148, 914, 194, 149 : -1
15 -> 115, 151 : 2
16 -> 116, 161, 216, 126, 162, 316, 136, 163 : 8
18 -> 118, 181 : 2
20 -> 120, 210, 201, 220, 202, 320, 230, 203, 420, 240, 204, 520, 250, 205, 620, 260, 206, 720, 270, 207, 820, 280, 208, 920, 290, 209 : 0
Những hạn chế
- Đây là môn đánh gôn, vì bạn sẽ cần phải sao chép nó vào thẻ chỉ mục để người thủ thư có thể chỉ cho giáo viên toán và tay bạn bị chuột rút dễ dàng.
- Hạn chế kẽ hở tiêu chuẩn áp dụng. Người thủ thư không tha thứ cho những kẻ gian lận.
Bảng xếp hạng
var QUESTION_ID=63191,OVERRIDE_USER=42963;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+(?:[.]\d+)?)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>
19
là số nguyên tố, vậy đầu ra không phải là 1?