Anagramming Stack Wymieniaj tytuły pytań na programy

20

Stack Exchange ma obecnie 134 strony z pytaniami i odpowiedziami . Dotyczy to wszystkich stron w wersji beta (takich jak PPCG), ale nie wniosków z obszaru 51 ani żadnych witryn meta, z wyjątkiem „meta matki” .

Aby odpowiedzieć na to pytanie, wybierz jedną z tych stron i napisz program, w którym każdy wiersz kodu jest anagramem tytułu innego pytania na tej stronie. Wszelkie pytania z tej witryny mogą być używane, o ile nie zostały usunięte i zostały zadane przed tym pytaniem .

Tytuł pytania zawiera wszystkie znaki, które pojawiają się w polu Titletekstowym po editkliknięciu łącza pod pytaniem, bez względu na to, czy są to białe znaki, formatowanie matematyczne , szalone znaki Unicode, cokolwiek. (Możesz użyć interfejsu API Exchange Exchange, jeśli chcesz przesyłać zapytania do kilku tytułów pytań naraz.)

Program, który piszesz, musi wyświetlać ciąg, który niezawodnie pojawia się u góry każdej strony stosu wymiany:

Questions Tags Users Badges Unanswered Ask Question

Ten dokładny tekst oraz opcjonalny końcowy znak nowej linii to jedyne, co powinien wypisać program. Brak danych wejściowych. Dane wyjściowe powinny przejść do standardowego wyjścia lub, jeśli nie jest to możliwe, podobnej alternatywy.

Ponieważ robienie tego tylko z anagramami tytułów pytań może być dość trudne, możesz opcjonalnie dodać jeden wybrany znak do każdej linii w programie, w dowolnej kolumnie. Nie wszystkie linie muszą mieć dodatkowy znak i nie musi to być ten sam znak w liniach. Znak może być dowolny z wyjątkiem terminatora linii . Znaki w wierszu minus ten jeden nowy znak powinny nadal być doskonałym anagramem tytułu pytania.

Punktacja

Twój wynik to (number of lines with no added character) + 2 * (number of lines with an added character). Najniższy wynik wygrywa. W przypadku remisów wygrywa wcześniejsza odpowiedź.

Detale

  • Musisz podać linki do wszystkich pytań, z których korzystałeś z tytułów.

  • Możesz wybrać tę samą witrynę Stack Exchange, co ktoś inny, choć zachęcamy Cię do wybierania nieużywanych witryn, tylko dla pewnej odmiany.

  • Jeśli użyte pytanie zostanie usunięte przed wyborem zwycięzcy, Twoje zgłoszenie będzie nieważne, więc najlepiej wybrać dobrze ustalone pytania.

  • Jeśli tytuły są edytowane na niektóre z twoich pytań, Twoje zgłoszenie jest nadal ważne, dopóki historia edycji pokazuje, że Twoje tytuły były poprawne po opublikowaniu odpowiedzi.

  • Komentarze w twoim programie są w porządku.

  • Edytowanie tytułów pytań w zależności od potrzeb to bardzo zła forma.

Hobby Calvina
źródło
1
Cytaty są trudne do znalezienia ...
Optymalizator
5
Zróbmy to.
Sp3000,

Odpowiedzi:

9

Python 2, wynik = 2

print '''               &''(()),..===>>?''HHIMMMMPPaaaaabccdddeeeeeeeeeegggimmmmnnnnnoooooprrrrsstwyy''' and 'questions tags users \
badges unanswered ask question'.title() or '             $.?IIWaaabbccccccceeefghhhhhhiijjkklllllmmnnnoooprrrstttttttuxyyz'

Nie udało mi się uzyskać w jednej linii, więc tutaj jest dość proste rozwiązanie w dwóch.

Znalazłem pytania dotyczące przepełnienia stosu, regexując 50 000 najdłuższych tytułów:

Oto moja najlepsza próba zastosowania jednego linera dla każdego, kto go wybiera (nie krępuj się go użyć):

print "questions tags users badges unanswered ask question".title() or AHHRUaacccceeeeeeeeeffghikkllmnnnooooooorrrrrrrtwwwy

Jak zagwarantować unikalność strony odsyłającej, która kliknie link na zdalnej stronie internetowej („Request.UserHostAddress” nie działa poprawnie)?

grc
źródło
10

Golfscript, 3 linie bez dodanych znaków

"Questions Tags Users Badge"'exception SLSATE[HY000][1049]eymfny incnue while pn chma afte intallin FOSBundl'or
"s Unanswered Ask "'Reoccurring error The current idetity(NT THORITY\NETWORK SERVICE)oe ot have it cc toC:\WINDOWS\Microsoft.NET\Framewor\v2.0.50727\Tempary ASP.NET Files'or
"Question""D he 'S'  SL stand f standard or strctured?"or

Uderzyłem StackOverflow, ponieważ prawdopodobnie miał najwięcej (użytecznych) postów. Wiele pytań można znaleźć w jQuery i SQL.

Bibliografia:

Używa dwóch łańcuchów w każdej linii i bierze pierwszy z or. Nie znam żadnego poprawnego skryptu, ale przetestowałem go tutaj .

Niezbędne cytaty można uzyskać w dwóch wierszach, ale potrzebujesz języka, który pozwala zrzucać znaki.

Sp3000
źródło
1
Usunięto jedną linię (lub użyj :o\"s Unanswered Ask "o).
jimmy23013