Trình tự ăn cắp: Cảnh sát


10

Đây là . Đây là chủ đề Cops . Đối với các chủ đề cướp, đi đây .

Tôi đã nhận thấy một số thách thức của OEIS (Từ điển bách khoa toàn thư về chuỗi số nguyên) kể từ khi tôi tham gia trang web. Dường như công bằng rằng chúng ta có một thử thách cảnh sát và kẻ cướp quyết định ai là chủ nhân của chuỗi số nguyên trực tuyến, một lần và mãi mãi.

Chỉnh sửa: Để ngăn các câu trả lời tầm thường, cảnh sát mất 1/2 điểm cho mỗi lần gửi bị bẻ khóa. Ngoài ra, với mục đích của thử thách này, các chuỗi liên tục không được phép. Điều này chỉ áp dụng cho các giải pháp được đăng sau khi chỉnh sửa này.

Cảnh sát

Viết chương trình hoặc chức năng, không có đầu vào, sẽ in bất kỳ chuỗi nào từ OEIS . Bằng cách xóa một số tập hợp con của các ký tự, chương trình của bạn phải có thể in một chuỗi OEIS khác khi chạy trong cùng một ngôn ngữ. Trình tự mới phải hoàn toàn mới, không chỉ đầu tiên bằng một tên khác hoặc với một phần bù khác. Không trình tự nào có thể chỉ đơn giản là một giá trị không đổi lặp đi lặp lại.

Bạn phải cung cấp chức năng đầu tiên, cùng với tên của trình tự OEIS để có thể xác minh tính chính xác. Sẽ ổn nếu hành vi bị nghi ngờ xung quanh giá trị MAX_INT của ngôn ngữ của bạn hoặc 256, tùy theo giá trị nào lớn hơn.

Cướp

Xóa các ký tự khỏi một số đệ trình của Cop để chương trình mới của bạn xuất ra bất kỳ chuỗi nào khác từ OEIS. Cung cấp chức năng mới cùng với tên của chuỗi OEIS mới. Đây là một tiện ích để đảm bảo rằng nội dung gửi của bạn hợp lệ (nghĩa là xóa các ký tự mà không có bất kỳ hoạt động kinh doanh hài hước nào. Không tự kiểm tra trình tự.)

Bạn nên xóa càng nhiều ký tự khỏi bản đệ trình của Cop càng tốt. Nếu một tên cướp khác (bất kỳ ai ngoại trừ Cop là tác giả của chương trình gốc) xuất hiện và tìm ra giải pháp ngắn hơn để tìm một chuỗi khác , thì tên cướp đó đã đánh cắp quan điểm của bạn. (Lưu ý rằng chỉ cần đánh golf các ký tự và in cùng một chuỗi là không đủ để đánh cắp điểm.)

Quy tắc & chấm điểm

Nếu sau một tuần, không ai có thể bẻ khóa giải pháp của bạn, bạn có thể đánh dấu giải pháp của mình là an toàn bằng cách cung cấp chương trình thứ hai cùng với tên của chuỗi mà nó tạo ra.

Bạn nhận được một điểm cho mỗi bài đăng an toàn và một điểm cho mỗi bài bạn gửi. Cảnh sát mất 1/2 điểm cho mỗi lần gửi bị bẻ khóa. Lưu ý rằng một tên cướp khác có thể đánh cắp điểm của bạn khỏi bản đệ trình bị bẻ khóa bất cứ lúc nào bằng cách cung cấp một chương trình ngắn hơn mang lại một chuỗi khác.

Cảnh sát chỉ có thể đăng một thách thức cho mỗi ngôn ngữ, mỗi người.

Người chơi có nhiều điểm nhất vào lúc 12:00 UTC vào ngày 7 tháng 7 sẽ thắng.


Bài đăng trên hộp
vroomfondel

1
Thử thách này vô cùng giống nhau. Tôi sẽ không lừa nó, nhưng tôi nghĩ rằng đây có thể là một bản sao.
FryAmTheEggman

1
@FryAmTheEggman ah, không thấy điều đó. Tôi không nghĩ đó là một sự lừa bịp như khoảng cách hãm hiếp = / xóa và những tên cướp có nhiều thời gian hơn để tìm câu trả lời ngoài ý muốn, nhưng nó giống với tôi hơn.
vroomfondel

1
Cảm ơn, @rogaos. Đó là câu trả lời tôi mong đợi cho câu hỏi đầu tiên nên không phải lo lắng. Có một vài ý tưởng cho Cảnh sát, hy vọng tôi sẽ có một vài phút vào buổi sáng để hoàn thành chúng.
Xù xì

3
Tôi nghĩ rằng khoảng cách chơi golf và Levenstein làm cho điều này khác biệt đáng kể. Cảnh sát phải xem xét các giải pháp tiềm năng khác nhau mạnh mẽ.
Nathan Merrill

Câu trả lời:



1

C, A000217, 239 byte Cracked

Đây không phải là nên tôi không bận tâm.

#include <stdio.h>
#include <limits.h>
int main()
{
    int i, n, temp = 0;
    for(i = 0; i < INT_MAX; i++)
    {
        n = 0;
        temp = i;
        while(temp)
            n+=temp--;
        printf("%d, ", n);
    }
    return 0;
}

Trình tự: https://oeis.org/A000217


1
@rogaos Cái bị bẻ khóa từ mã này không phải là hằng số (ít nhất là cái tôi biết)
Govind Parmar

Chỉnh sửa theo byte để thuận tiện cho tên cướp.
Stephen


@rogaos Tôi nghĩ rằng điều này có thể bị bẻ khóa tốt hơn so với tôi bằng cách làm cho nó không đổi, nhưng tôi nghĩ rằng nó thú vị hơn là không cố định, vì vậy tôi muốn bỏ phiếu cho điều này để không phải là một ngoại lệ đối với quy tắc liên tục
nmjcman101

1
@ nmjcman101 đủ công bằng, vì Govind không có ý định đó là một hằng số. Xóa bình luận của tôi ở trên.
vroomfondel

1

Python 2, 273 byte, bị bẻ khóa

Trình tự ban đầu: A004442

import zlib, base64;exec(zlib.decompress(base64.b64decode('eJzLtDUAAAHoANc=')))
while True:print eval(zlib.decompress(base64.b64decode('eJwzAgAAMwAz')))^eval(zlib.decompress(base64.b64decode('eJwzjssEAAHBAPs='))),;exec(zlib.decompress(base64.b64decode('eJzL1LY1BAAC1AED')))

Hãy thử trực tuyến!



2
mega cracked (tôi nghĩ)
Stephen

1

MOO, 86 byte, an toàn

a=0;b=1;while(a>-1)a=$math_utils:sum(a,a);a=max(1,a);notify(player,tostr(a));endwhile

In quyền hạn của hai (A000079).

Giải pháp:

a = 1; while (a> -1) a = $ math_utils: sum (a, a, a); thông báo (người chơi, tostr (a)); cuối cùng (in quyền hạn của 3 (A000244) thay thế)


0

PHP , 20 byte Cracked

for(;;)echo+!$i,",";

Hãy thử trực tuyến!

trình tự in https://oeis.org/A000012


Phiên bản gốc của bạn bẻ khóa phiên bản này.
vroomfondel


Bạn đã có một giải pháp trong tâm trí cho người đầu tiên? Nếu vậy, bạn nên cuộn lại.
vroomfondel

1
@rogaos, tôi đã bẻ khóa phiên bản hiện tại mà không thấy rằng nó đã thay đổi. Lăn ngược sẽ gây ra một mớ hỗn độn.
Peter Taylor

1
@rogaos Bạn nên cấm các chuỗi trả về giá trị không đổi
Jörg Hülsermann

0

cQuents (cam kết cũ hơn), 10 byte, bị bẻ khóa

=0,1,1:z+y

Đây vẫn là một ngôn ngữ WIP nặng nề, nhưng tôi đã vá trình thông dịch lên để nó hoạt động. Nhấp vào tên ngôn ngữ cho liên kết Github.

Điều này tạo ra chuỗi Fibonnacci: A000045

Giải trình:

(vì tôi không có tài liệu và tôi không mong bạn đọc mã thông dịch viên của tôi)

=0,1,1      Set start to [0,1,1]
      :     Mode: sequence
       z+y  Each term is the previous two terms added together
            Because there is no input, output the whole sequence

Nếu các chuỗi liên tục vẫn được cho phép, điều này sẽ siêu dễ dàng để cướp.



Ngôn ngữ này là tuyệt vời
vroomfondel

@rogaos vẫn chưa xong, không nơi nào gần, nhưng cảm ơn :)
Stephen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.