З Днем народження мене!


21

З Днем народження мене!

Напишіть програму, яка друкує Happy birthday to me!в день народження.

  1. День народження програми - це час створення, останньої модифікації або компіляції програми (ви обираєте), і не повинно бути жорстко кодованим.
  2. Дата, яку ви використовуєте як день народження, жодним чином не повинна впливати на виклик або виконання програми. Ви не можете змінити день народження.
  3. Щоб отримати додатковий кредит (-15% байт), друкуйте Happy birthday to you!у день народження (жорстко закодований), якщо він не збігається з програмою. Або скористайтеся якоюсь днем ​​народження знаменитостей і отримайте -14%.
  4. Він повинен надрукувати лише це, а не друкувати нічого іншого дня.
  5. Підрахунок байт у UTF-8.
  6. Використовуйте григоріанський календар.

Удачі та щасливого дня народження (програмам для новонароджених).

PS
Після коментаря Ізката, якщо ви надрукуєте Happy birthday to Melна день народження Мела Кей , ви отримуєте 20% знижки. Але ви повинні надати надійне джерело, що це ця дата.


1
@TeunPronk, не можна робити і те, і інше. Або скористайтеся власним днем ​​народження, або знаменитістю (або нічим, і відмовтеся від додаткового кредиту).
ugoren

4
@TeunPronk: Лише Джон Скіт може: P
MSalters

11
Я бачив це на бічній панелі "Гарячі запитання" і читав "З днем ​​народження Мелу " ...
Ізката

1
@PeterTaylor: Так? Присудження різного роду бонусних очок за додаткові функції досить поширене для питань з кодом про гольф , і я ніколи раніше не бачив, щоб хтось заперечував питання щодо використання цього тегу, якщо основним критерієм оцінювання є довжина коду.
Ільмарі Каронен

1
@Izkata, оновив питання на честь Мела.
ugoren

Відповіді:


10

PHP 77 75 74 65 60

Величезне спасибі за чудові пропозиції Тіма Сегейна :

<?date(dm,getlastmod())-date(dm)&&die?>Happy birthday to me!

Підлий PHP: 46 42 41 40

Використовуючи ідею Філа Х і знову пропозицію Тіма Сегіна :

<?touch(__FILE__)?>Happy birthday to me!

Чи не включає він рік у порівнянні? якщо так, то це працює лише на 0 день народження.
угорен

@ugoren Ви маєте рацію! Дякуємо за виправлення. Збережено 2 байти.
ComFreek

Якщо "нічого не передбачає" в правилах розуміється як стандартний вихід, то ви можете виграти 4 байти, видаливши ''навколо dmрядків. Це створило попередження, але я вважаю, що він надсилається до стандартної помилки, якщо ввімкнено повідомлення про помилки.
Тім Сегуїн

4
<?date(dm,stat(__FILE__)[9])-date(dm)&&die?>Happy birthday to me!
Тім Сегуїн

1
@TimSeguine Дякую за ваші пропозиції! Я включив їх у свою відповідь, сподіваюся, ви не заперечуєте.
ComFreek

48

Баш (підлий): 36

touch $0;echo Happy Birthday to me\!

Відповідно до правил: "час створення, модифікації або компіляції програми". Я вибираю час модифікації та вічну самомодифікацію. [HT @ace за 1 чар]

Перл (теж підлий): 29

print "Happy birthday to me!"

Цей, мабуть, менш підлий, ніж перший; Програми Perl завжди складаються перед їх виконанням, про що не всі знають - бачте, є просвітницький розкрут на схильність. Тож ось ця дата складання я використовую.

- Редагувати для зміни правил -

Це було написано до того, як існувало якесь правило щодо зміни дня народження. Я думаю, що Perl все ще стоїть; всі програми Perl складаються перед їх запуском. Відповідь я залишу тут з освітніх міркувань!


6
Гаразд, шахрай, отримай мій +1 за кмітливість.
Віктор Стафуса

1
Ви можете втекти !з \!і видалити котирування, щоб зберегти 1 char
user12205

1
Хороший трюк, але правила прямо забороняють це (зараз).
ugoren

1
@ugoren Ще не забороняє PERL рішення, яке компілюється перед програмою починається .
Cruncher

3
@Cruncher, боюся, ти маєш рацію. Я проконсультуюся зі своїм юристом і надішлю вам рахунок.
ugoren

13

баш - 65

[ `date +%d%m -r $0` = `date +%d%m` ]&&echo Happy birthday to me!

Завдяки ugoren , туз та nyuszika7h за допомогу.


Я думаю, що ти можеш уникнути !з, \!тому вам не потрібні цитати і зберегти 1 знак.
користувач12205

Насправді у мене були цитати, оскільки я думав, що відлуння вимагатиме їх для пробілів. Я вийняв їх і не оминув знак оклику, і він все одно спрацював. Дякую за пораду!
shiona

2
Вам потрібно бігти лише !в інтерактивних оболонках, а не в сценаріях.
nyuszika7h

Ви можете зберегти два символи, використовуючи [та ]замість [[і ]].
nyuszika7h

1
Чи працює він, коли рік не такий, як дата створення?
ugoren

6

C # 198,05 (233 - 15%)

using s=System;class P{static void Main(){string t=s.DateTime.Now.ToString("Mdd"),b="1202";if(s.IO.File.GetCreationTime(typeof(P).Assembly.Location).ToString("Mdd")==t|b==t)s.Console.Write("Happy birthday to "+(b==t?"you!":"me!"));}}

Відформатовано:

using s = System;
class P
{
    static void Main()
    {
        string t = s.DateTime.Now.ToString("Mdd"), b = "1202";
        if (s.IO.File.GetCreationTime(typeof(P).Assembly.Location).ToString("Mdd") == t | b == t)
            s.Console.Write("Happy birthday to " + (b == t ? "you!" : "me!"));
    }
}

191 (Без бонусу)

using s=System;class P{static void Main(){if(s.IO.File.GetCreationTime(typeof(P).Assembly.Location).ToString("Mdd")==s.DateTime.Now.ToString("Mdd"))s.Console.Write("Happy birthday to me!");}}

181,05 (213 - 15%)

З деякими додатковими вказівками (вам потрібно скласти це b.exeі запустити його з каталогу, у якому виконується виконуваний файл), я можу отримати це до цього:

using s=System;class P{static void Main(){string t=s.DateTime.Now.ToString("Mdd"),b="1202";if(s.IO.File.GetCreationTime("b.exe").ToString("Mdd")==t|b==t)s.Console.Write("Happy birthday to "+(b==t?"you!":"me!"));}}

171 (Без бонусу)

Ті ж інструкції, що і вище, на цей раз надрукуючи повідомлення лише у свій день народження (тому немає бонусу -15%).

using s=System;class P{static void Main(){if(s.IO.File.GetCreationTime("b.exe").ToString("Mdd")==s.DateTime.Now.ToString("Mdd"))s.Console.Write("Happy birthday to me!");}}

Ви можете зберегти кілька байт у бонусних, додавши ,b="1202"==tпісля отримання рядка дати та використовуючи його замість цього.
ahruss

1
Спасибі! Хоча "кілька байт" виявляється одним ... чи я щось пропускаю? Редагувати Ах, бачу; Ви сказали, ,b="1202"==tале ця ==tчастина неможлива, оскільки вона оцінює булі, а інший var - це рядок. Ви не можете (AFAIK, який є) використовувати два різні типи в одній декларації "var".
RobIII

Ага, гаразд. Минув час, коли я використовував C #. Моє ліжко.
ahruss

Ви можете скоротити більш просту версію, порівнюючи дати, а не рядки. Це чоловіки, що використовують щось подібне CreationTime.Date == DateTime.Today.
svick

Це працювало б лише сьогодні / цього року / дня народження 0. Як би це працювало в інші роки?
RobIII

5

Java - 275 - 15% = 233,75 з бонусом / 237 без бонусу

З бонусом:

import java.util.*;class L{public static void main(String[]y){int s=f(new Date());String j="Happy birthday to ";System.out.print(s==f(new Date(new java.io.File("L.class").lastModified()))?j+"me!":s==183?j+"you!":"");}static int f(Date d){return d.getMonth()*40+d.getDate();}}

Без бонусу:

import java.util.*;class L{public static void main(String[]y){if(f(new Date())==f(new Date(new java.io.File("L.class").lastModified())))System.out.print("Happy birthday to me!");}static int f(Date d){return d.getMonth()*40+d.getDate();}}

Я народився у квітні 23-го.


1
З Днем Народження , щоб НЕ за ;-) Просто врятував вам ще один байт :-)
RobIII

@RobIII Спасибі, виправлено.
Віктор Стафуса

Також \nне потрібно використовувати новий рядок ( ) AFAIK, який заощаджує вам ще 4 байти ;-)
RobIII,

@RobIII Ще раз спасибі
Віктор Стафуса

Так ... я повинен перестати стріляти власною ногою: P Вас вітають;)
RobIII

3

Я дуже пишаюся цим маленьким трюком, щоб зберегти кілька байт на повідомленні. Сподіваюся, він буде включений в інші відповіді. Я першим подумав про це!

Пітон

105 символів, без зайвих кредитів. Збережіть файл як "з днем ​​народження для мене" та запустіть. Працює лише в GMT, а "день народження" визначається як дата вашого народження, а не ювілей (також часто називають "днем народження").

import sys,os,time
if (int(os.stat(*sys.argv).st_atime/86400)==int(time.time()/86400)):print sys.argv[0]

Щоб це спрацювало, збережіть це як «з днем ​​народження для мене» та запустіть python "happy birthday to me"

Примітка: звичайно, все, крім невеликого завантажувального коду, може бути у назві файлу, тому будь-який довільно великий код зменшується до завантажувального. Зазвичай я вважав би це "обманом". Однак "з днем ​​народження для мене" - це нерозумне ім'я файлу - воно описує те, що робить програма, набагато краще, ніж деякі програми (наприклад, "python"), тому в цьому випадку я це дозволю :)


Я думаю, що покладатися на ім'я файлу є обманом (хоча я не забороняв цього прямо). Якщо це дозволено, чому б не просто написати eval(sys.argv[0])?
ugoren

І я не намагався визначати день народження, але це день, який приходить раз на рік, коли людина святкує річницю свого народження , а не точний день, коли ви народилися.
ugoren

ugoren: Я це згадував у своїй замітці внизу (яка заздалегідь додає ваш коментар). However, "happy birthday to me" is not an unreasonable filename - it describes what the program does, much better than some programs (e.g. "python"), so in this case I'm going to allow it
AMADANON Inc.

2

Матлаб: 66

t=dir('f.m');if strncmp(t.date,date,5),'Happy birthday to me!',end

Ім'я файлу має бути "fm"


1
На ваш день народження він повинен сказати : « З днем народження тебе !» :-)
РобІІІ

@RobIII: На жаль, ти маєш рацію, я не читав достатньо уважно. Видалить другу версію. Спасибі!
H.Muster

Я припускаю, strncmp(x, y, 5)порівнює дати, як 28-12-2013перші 15 символів ( 28-12наприклад, 28 грудня). Чи це також працює, якщо, наприклад, налаштування локальних даних користувачів yyyy/mm/dd? Чи dd-mm-yyyyзавжди Matlab за замовчуванням завжди? (Просто цікаво). Редагувати Nevermind: знайшов! . Здається, так і є. Все одно не було б значення для того, mm/dd/yyyyабо в dd-mm-yyyyтому, що і лівий, і правий операнд так чи інакше використовуватимуть один і той же формат, і обидві 5 лівих лівих знаків у будь-якому випадку відповідатимуть; доки рік ніколи не веде.
RobIII

Навіщо вам потрібна змінна t? Не dir('f.m').dateпрацює?
угорен

@ugoren: tнеобхідно dirповернути атрибути файлу (інакше було б просто повернути всі файли в каталозі, які відповідають 'f.m'). Крім того, tнеобхідний доступ до dateполя.
H.Muster

2

ГНУ КОБОЛЬ з -вільно, 204

PROGRAM-ID.B.DATA DIVISION.WORKING-STORAGE SECTION.
1 A PIC XXXX/XX.
1 B PIC X(5).
1 C PIC X(21).
PROCEDURE DIVISION.ACCEPT A FROM DATE
ACCEPT C
MOVE WHEN-COMPILED TO B
IF A(3:5) = B OR "12/09" DISPLAY C.

Я порушую правила щодо знаменитості, тому ніякого бонусу немає ...

Текст, що створюється, вводиться користувачем (запитується під час запуску). Якщо це не дуже зручно, то рядок, що визначає, Cпотрібно видалити, як це потрібно ACCEPT C, і DISPLAY Cповинен стати DISPLAY "HAPPY BIRTHDAY TO ME!"для додаткових семи символів.

WHEN-COMPILEDце спеціальний реєстр, що містить дату / час компіляції, який доступний програмі (завжди зручно, ви можете знати, що у вас є правильна версія). Він усічений у MOVEтому, що решта не потрібна. DATE- поточна дата - ця є yymmdd.

У /визначенні A є символом редагування вставки, оскільки дата складання містить косої риски. Додатковий характер, але полегшує порівняння.

Знаменитості = Грейс Хопер


2

Пакетна - 37 байт

Крадіжка методу, який використовується одним із відповідей Баша.

@echo.>>%0&echo Happy birthday to me!

Інший метод - 145 байт

@for /f "tokens=2,3 delims=/ " %%a in ("%date%")do @for /f "tokens=1,2 delims=/" %%c in ("%~t0")do @if %%a%%b==%%c%%d @echo Happy Birthday to me!

1

Ruby, 69 символів / байт

puts'Happy birthday to me!'if(Time.new-File.atime($0))%31536000<86400

31536000- це кількість секунд за рік, і 86400це кількість секунд в день.


4
На жаль, працює правильно лише протягом семи років або близько того, доки ви не зіткнетесь у перший високосний рік після цього.
Амадан

Також йдеться про "щасливий день народження" вранці після дня народження, і не говорить "щасливий день народження" вранці до дня народження.
AMADANON Inc.

1

JavaScript

Node.js, 156 байт

b=new Date(require("fs").statSync(__filename).mtime);d=new Date();b.getDate()==d.getDate()&&b.getMonth()==d.getMonth()&&console.log("Happy birthday to me!")

Використовує час модифікації файлу.


побивши вас на 56 байт = P
стронцій

Я отримую помилку виконання під час запуску вашого, але підхід до відповідності, безумовно, набагато розумніший. Виправте помилку, і ви отримали мою нагороду. ;)
Кріс В.

Чи можете ви процитувати помилку та вашу ОС? Я думаю, що це просто не кросплатформна форма.
стронцій

1

Powershell - 105 байт

if('{0:M}'-f(gi $MyInvocation.MyCommand.Definition).creationtime-eq(date -f M)){'Happy birthday to me!'}

Безголівки:

if('{0:M}' -f (gi $MyInvocation.MyCommand.Definition).creationtime -eq (date -f M)){
  'Happy birthday to me!'
}

Бонус не вартий, я можу отримати лише 117,5.


1

Powershell - 127

if ((gci $MyInvocation.MyCommand.Path).lastwritetime.ToString("MMdd") -eq (get-date).ToString("MMdd")){"happy birthday to me!"}

За 15% бонус - 151 байт, менше 15% = 128,4

$r=@{"0308"="you";(gci $MyInvocation.MyCommand.Path).lastwritetime.ToString("MMdd")="me"}[(get-date).tostring("MMdd")]
if($r){"Happy birthday to $r!"}

1
Я не фахівець з питань захисту прав, але це спрацює лише в поточному році? Що робити, коли "програма" має день народження 1-го, 2-го, 3-го і т.д.?
RobIII

Ви можете видалити writeкоманду - тільки що "happy birthday to me!"вона роздрукує її.
нечисте м'ясо

Ваша цілком права. Я повинен це знати.
Кріс Дж

@Robill - ой. Ось що приходить писати щось, коли я відволікаюся на щось інше і використовую кодегольф як зволікання. Виправлено (не те, що це має шанс на перемогу, розум).
Кріс Дж.

1

Ruby - 80 103 87 байт

m=File.mtime $0
t=Time.now
puts"Happy birthday to me!"if t.month==m.month&&t.day==m.day

Рубі - 123 115 135 121 - 15% = 104,55 97,75 114,75 102,85 балів

t=Time.now
{me:File.mtime($0),you:Time.at(36e5)}.map{|n,d|puts"Happy birthday to #{n}!"if t.month==d.month&&t.day==d.day}

Це може бути трохи довше або коротше, залежно від того, де день народження припадає на рік, і найкоротший спосіб представити це. Для мого, це 36e5(секунди з епохи; часовий пояс залежить).


Чи вважається Мел Гібсон ? Ось 138 байт - 35% бонус = 89,7-бальна програма, яка святкує себе, мене та Мела!

t=Time.now
{me:File.mtime($0),you:Time.at(36e5),Mel:Time.at(2e5)}.map{|n,d|puts"Happy birthday to #{n}!"if t.month==d.month&&t.day==d.day}

1
Ваш код не працює в високосні роки для дат після лютого.
ugoren

@ugoren правий ти. Виправили це, але втратили багато очок :(
Тім С.

Але зараз я відновив більшість із них! =)
Тім С.

0

PureBasic

Без бонусу - 142

If Bool(FormatDate("%dd%mm",Date())=FormatDate("%dd%mm",GetFileDate(ProgramFilename(),0)))
MessageRequester("","Happy birthday To me!")
EndIf

З бонусом - 218 - 15% = 185,3

Dim s$(2)
s$(1)="me"
s$(2)="you"
m$="%dd%mm"
d$=FormatDate(m$,Date())
i=Bool(d$=FormatDate(m$,GetFileDate(ProgramFilename(),0)))|(Bool(d$="2301")<<1)
If i=0:End:EndIf
MessageRequester("","Happy birthday To "+s$(i)+"!")

0

TI-BASIC, 68 байт

If Ans=0:getDate→G:0:G=G:If getDate=G:Disp "HAPPY BIRTHDAY TO ME!"

Пам'ятайте, що ці лексеми один байт: If , Ans, →, Disp. getDateце два байти. Усі інші символи одного символу - один байт.


1
Ви впевнені, що це UTF-8?
Fozzedout

3
ОП прямо заявляє, що ви повинні використовувати UTF-8. Це 66 символів і 68 байт.
nyuszika7h

2
Якщо ви хочете стверджувати, що це 46 байт, запишіть його в 46 байт. Як зараз, це 68 байт.
ugoren

Відповідно до розмірів жетонів у стандартному середовищі TI-Basic, це 55 байт, але як звичайний текст, так це його 68. Також технічно не повинно бути "в кінці", щоб можна було зберегти байт.
Лимонний падіння

0

J 79

 echo((6!:0'')(('',:'Happy birthday to me!'){~])@:-:&(1 2&{)&:>])1{,1!:0{:4!:3''

Версія бонусу120 - 15% = 102

Чи можу я отримати додатковий кредит для друку обох, коли обидва мають день народження?

echo((2 6$(6!:0 '') , 0 2 7)(' ','Happy birthday to ',"2 1]3 5$'you! me!  both!'){~#.@:(-:&(1 2&{)"1)&:>])1{,1!:0{:4!:3''

Пояснення (справа наліво):

last =: {:4!:3''     NB. Take the last script run (i.e. the file itself)
time =: 1{,1!:0 last NB. the modification time is the second element in that file's listing

Центральне дієслово поїзда

unbox_both =: &:>      NB. unboxes left and right argument
match  =: -:&(1 2&{)"1 NB. for each date given, left and right, compare them
to_int =: #.           NB. convert boolean to int
from   =: {~           NB. from the left array, take element right.

NB. H contains messages an empty row, appended to all combinations of messages. 
H =: (' ','Happy birthday to ',"2 1]3 5$'you! me!  both!')

V =: (H from to_int)@:match unbox_both NB. after unboxing and comparing, 
                                       NB. select the according message

Лівий зубчик для центрального поїзда:

dates=: (2 6$(6!:0 '') , 0 2 7) NB. the current date, and the relevant fields of my birthday.

NB. Combining the bricks:
echo (dates V ]) time           NB. output the monads result on time.

0

Ява - 196

Це відрізняється від інших представлень Java тим, що використовує Strings, відбиваючи 41 символ у процесі. Він використовує String.format ("% tj") для форматування java.util.Date або long як строка денного року, а потім порівнює ці два рядки.

class Z{public static void main(String[]y){if("".format("%tj",new java.util.Date()).equals("".format("%tj",new java.io.File("Z.class").lastModified())))System.out.print("Happy birthday to me!");}}

Відформатовано:

class Z
{
    public static void main(String[] y)
    {
        if ("".format("%tj", new java.util.Date()).equals("".format("%tj", new java.io.File("Z.class").lastModified())))
            System.out.print("Happy birthday to me!");
    }
}

1
День року не працює добре з високосними роками.
ugoren

@ugoren Я згоден Однак, оскільки конкурс зараз триває і ми вже 20 лютого. компіляція DAT повинна бути прекрасною протягом декількох днів і не створювати проблем протягом наступних років. При складанні після 28 лютого справді виникне (майбутня) проблема.
РобІІІ

Якщо я збирався після 28 лютого, я міг би змінити формат String на "% tm% td" за шість балів, вартість символу
timxyz

0

C # 191 немає бонусу

using s=System;class P{static void Main(){if(s.IO.File.GetCreationTime(typeof(P).Assembly.Location).ToString("Mdd")==s.DateTime.Now.ToString("Mdd"))s.Console.Write("Happy birthday to me!");}}

відформатовано:

using s = System;
class P
{
    static void Main()
    {
        if (s.IO.File.GetCreationTime(typeof(P).Assembly.Location).ToString("Mdd") == s.DateTime.Now.ToString("Mdd"))
            s.Console.Write("Happy birthday to me!");
    }
}

Ви використовуєте х лише двічі; var x="MMdd";+ ToString ( x) + ToString ( x) = 15, тоді як ToString ( "MMdd"); + ToString ( "MMdd"); тільки витрати 12.
РобІІІ

Також новий рядок не потрібно, щоб його WriteLine()можна було скоротити Write(). З урахуванням вищезгаданих змін і у вас є таке саме рішення, як і я ;-)
RobIII,

1
Ви також повинні оновити рахунок, який зараз є 193. І ви можете зменшити його до 191 р.,
Поголивши

0

JavaScript (node.js) - 100 байт

(require('fs').fstatSync(4).mtime+1).match(Date().substr(4,6))&&console.log('Happy birthday to me!')

0

vb.net ~ 161c

Це надрукує повідомлення про святкування для всіх, у кого це день народження.

Module M
Sub Main
For Each b In{({"1705","Alan"}),({"2012","You"}),({FileDateTime(Process.GetCurrentProcess.MainModule.FileName).ToString("ddMM"),"Me"})}
If b(0)=Now.ToString("ddMM") Then Console.WriteLine("Happy Birthday To {0}!",b(1))
Next
End Sub
End Module

Алан => Алан Кей

Оцінка: 253c (-33c vb.net хв) = 220 - 15% (бонус за день народження) = 187c - 14% (Celeb Birthday) = 160,82 ~ 161c або 220c - 29% = 156,2 ~ 157c


Ви можете отримати бонус на день народження АБО знаменитості. Не обоє.
ugoren

@ugoren Scoring не вказує, що це ексклюзивне або, тому я використовую логічне значення або.
Адам Спейт

0

Powershell, 82 байти

див. відповіді від Кріса Дж та SpellingD

"Happy birthday to me!"|?{(gv My* -v|% M*|% p*h|gci|% l*w*e|% D*r)-eq(date|% D*r)}

де

gv My* -v|% M*|% p*h|gci|% l*w*e|% D*r

- це комбінації ярликів та псевдонімів для виразу:

Get-Valiable MyInvocation -value|% MyCommand|% Path|Get-ChildItem|% LastWritetime|% DayOfYear

що еквівалентно канонічній формі:

(Get-ChildItem $MyInvocation.MyCommand.Path).LastWritetime.DayOfYear

Powershell, 119 байт - 14% = 102,34 Бали

filter e{$_-eq(date|% D*r)}$('me'|?{gv My* -v|% M*|% p*h|gci|% l*w*e|% D*r|e}
'Prof'|?{3|e})|%{"Happy birthday to $_!"}

На 3 січня , дисплей сценарію Happy birthday to Prof!. Якщо цей скрипт буде збережено 3 січня, з’явиться два привітання.


-1

C # - 63 байти

class P
{
    static void Main()
    {
          Console.Write("Happy birthday to me!"));
    }
}

Я вибираю час компіляції . Оскільки код C # компілюється в MSIL, який під час виконання компілюється у виконавчий код компілятором JIT , ця програма відповідає умовам.

EDIT - Можливо, неправильна відповідь, як зазначено в коментарях.


1
Стара хитрість, вже не дійсна. Правило 2 говорить, що "жодним чином не повинно впливати виклик або виконання програми".
угорен

оновлено відповідно. Дякую @ugoren
rahulroy9202

@ugoren Код PERL від Phil H також використовує цей самий фокус. Перевірте найвищу відповідь.
rahulroy9202

2
Це також недійсна відповідь. Але - він вперше застосував цей трюк, і в той час, коли він це зробив, правила дозволяли.
угорен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.