प्रैक्टिकल गोल्फ - यूएस स्टेट्स [बंद]


11

मेरे परिवार का ई-कॉमर्स व्यवसाय है। अपनी स्वयं की साइट पर, हम लोगों को उनके पते में प्रवेश करने पर ड्रॉपडाउन मेनू से अपना राज्य चुनने के लिए मजबूर करते हैं, लेकिन कुछ अन्य चैनलों के माध्यम से जिनका हम उपयोग करते हैं, ग्राहक कुछ भी दर्ज कर सकते हैं जो वे बॉक्स में चाहते हैं।

मेरी माँ को उनके लिए मेरे द्वारा किए गए इनवॉइस टेम्प्लेट बहुत पसंद हैं, जो स्वतः उत्पन्न होते हैं। लेकिन क्योंकि वे बहुत सुंदर और संतुलित हैं, वह इसे बर्दाश्त नहीं कर सकती जब लोग अपने राज्यों के नामों को गलत करते हैं, या इससे भी बदतर, "नई जर्सी" जैसा कुछ लिखते हैं। वह कहती है कि यह लुक को बर्बाद कर देता है।

मेरे पिताजी को हल्का होना कोड पसंद है। इसलिए स्विच-केस ब्लॉक का उपयोग करने के बजाय, वह एक लीनियर समाधान चाहता है।

इसलिए चुनौती एक छोटा कार्य करना है जो संभव इनपुट लेता है और दो अक्षर का संक्षिप्त नाम (मॉम के लिए पूंजीकृत) देता है। हम एक (दोषपूर्ण) धारणा बनाने जा रहे हैं जो हमारे उपयोगकर्ता जादू कर सकते हैं और हमेशा नाम में एक स्थान डाल सकते हैं (जहां आवश्यक हो) या सही संक्षिप्त नाम में पास करें। दायरा 50 अमेरिकी राज्यों का है।

  • न्यूयॉर्क
  • न्यूयॉर्क
  • न्यूयॉर्क
  • ny

न्यूयॉर्क के लिए सभी स्वीकार्य इनपुट हैं, और एनवाई का उत्पादन करना चाहिए।

यदि न्यू यरक जैसी किसी चीज को पास किया जाता है, तो फ़ंक्शन मूल मान वापस कर सकता है।

आप किसी भी सामान्य भाषा का उपयोग कर सकते हैं। यह एक लोकप्रियता प्रतियोगिता है, इसलिए एक सप्ताह के अंत में सबसे अधिक वोटों के साथ जीत होती है। मुझे लगता है कि यह नवीनता और उपयोगिता का पक्ष लेगा।

संपादित करें: विवरण कहानी फुल है, लेकिन मैं एक समान परियोजना पर काम कर रहा था और सोचा था कि इसे करने के लिए एक और दिलचस्प तरीका होना चाहिए। मैं स्वयं प्रोजेक्ट कर सकता हूं (पहले से ही किया था) लेकिन मुझे लगा कि यह अधिक दिलचस्प चुनौती के लिए एक अच्छी जगह है। "किसी भी सामान्य भाषा" द्वारा मैं इस चुनौती के लिए डिज़ाइन की गई कस्टम भाषाओं / पुस्तकालयों को शामिल नहीं कर रहा था - मैं निशुल्क कोड सहायता के बजाय उपन्यास विधियों की तलाश करने की कोशिश कर रहा था। मुझे लगता है कि सभी ने किसी न किसी बिंदु पर ऐसा किया है, लेकिन यह असामान्य तरीके से करने में मज़ा आएगा। मुझे लगता है कि सबसे दिलचस्प परियोजनाएं वे हैं जहां आप नए और दिलचस्प तरीकों से रोजमर्रा के कार्यों से निपटते हैं - यही कारण है कि यह गोल्फ के बजाय एक लोकप्रियता प्रतियोगिता है।


14
मैं अनिश्चित हूं कि यह कोड गोल्फ के बजाय एक लोकप्रियता प्रतियोगिता क्यों है (विशेषकर चूंकि नाम में 'गोल्फ' शामिल है और आपके पिताजी छोटे कोड के पक्षधर हैं)।
Geobits

5
@Claudiu सच है, लेकिन यह साइट उत्पादन कोड के लिए अभिप्रेत नहीं है ...
Geobits

3
@ कैलाडु मैं ईमानदारी से मान लिया गया था कि इस तरह की "कहानी फुलझड़ी" है जो आमतौर पर इन चुनौतियों के साथ होती है। किसी भी तरह से, जब मैंने कहा "यह साइट ..." मेरा मतलब पीपी एंड सीजी है, क्योंकि यहां अधिकांश कोड स्पष्ट रूप से उत्पादन में उपयोग के लिए नहीं है। ईमानदारी से, यदि वह अपनी साइट पर उपयोग करने के लिए वास्तविक कोड की तलाश कर रहा है, तो इसे स्वयं करना या उसे अनुबंधित करना अधिक नैतिक होगा;)
जियोबिट्स

8
@chilemagic you can use any code... तो OP आपके APL / CJAM / GolfScript समाधान का उपयोग करने के लिए अपनी साइट को फिर से लिखेगा? यह एक सच्ची कहानी पर आधारित एक चुनौती है। मैं वोट करता हूं
edc65

4
यह एक बहुत ही तुच्छ कार्य है, क्यों ओपी एक प्रश्न टाइप करने के सभी प्रयास में जाएगा, जब यह आसान होगा कि इसे खुद को कोड करना आसान हो? किसी भी तरह से, मैंने इसे जाने का आनंद लिया।
जेम्स विलियम्स

जवाबों:


27

माणिक

यह स्पष्ट रूप से किसी भी नाम या अमूर्त को लिखे बिना राज्य के संक्षिप्त विवरण निकालने के लिए दिलचस्प होगा। यह एक को ध्यान में इनपुट की गलत वर्तनी ले नहीं करता है, क्योंकि हम, codegolf.SE पर यहां इस तरह के काम के बारे में परवाह नहीं है rihgt ?

def f(s)
  [
    /(.).* (.)/,              # two words
    /^([CDGHKLPV]).*(.)$/,    # first and last letter
    /^(.).*([ZVX])/,          # unique letter
    /^([NFOUW])(.)/,          # two first letters
    /^(.)([DNR])/,            # unique second letter
    /^(.).*(L|N)\2/,          # double letters
    /^(.).SS(A|O)/,           # double S before the one used
    /^(.).*?[SNW](.)/,        # identified by the letters before them
    /(.)(.)/                  # two first letters

  ].find { |r| r =~ s.upcase }
  $1+$2
end

सभी राज्यों से मिलान करने के लिए चतुर पैटर्न का पता लगाने के लिए एक ठोस समय लगा। पैटर्न का क्रम महत्वपूर्ण है - प्रत्येक लगातार पैटर्न शेष राज्यों पर लागू होता है जो पिछले पैटर्न से मेल नहीं खाते थे:

दो शब्दों वाले सभी राज्य दो शब्दों के प्रारंभिक अक्षरों का उपयोग करते हैं:

एन ew एच ampshire, एन ew जम्मू ersey, एन ew एम exico, एन ew वाई ork, एन त्तर सी arolina, एन त्तर डी अकोटा, आर Hode मैं sland, एस outh सी arolina, एस outh डी अकोटा, डब्ल्यू स्था वी irginia

{ CDGHKLPV} में किसी भी पत्र के साथ भीख मांगने वाले सभी राज्य नाम में पहले और अंतिम अक्षर का उपयोग करते हैं:

सी aliforni एक , सी olorad , सी onnecticu टी , डी elawar , जी eorgi एक , एच AWAI मैं , कश्मीर ansa रों , कश्मीर entuck y , एल ouisian एक , पी ennsylvani एक , वी irgini एक , वी ermon टी

शेष राज्यों में, { ZVX} अक्षर अद्वितीय हैं:

एक री z Ona, एनवी ada, टीएक्स के रूप में

{ FNOUW} से शुरू होने वाले सभी शेष राज्य दो पहले अक्षरों का उपयोग करते हैं।

Fl orida, Ne braska, Oh io, Ok lahoma, या egon, Ut ah, Wa shington, Wi scinos, Wy oming

फिर, { DNR} दूसरे अक्षरों के रूप में अद्वितीय हैं:

अर केंसास, में डायना, ईद aho

यह वास्तव में सामान्य पैटर्न बनाने के लिए कठिन हो रहा है, लेकिन ...

केवल तीन शेष राज्य दोहरे Nया उपयोग करते हैं L, और डबल अक्षर का उपयोग राज्य संक्षिप्त नाम में किया जाता है:

टी एन एन essee, एम में n esota, मैं एल एल inois

Aया Oडबल एस के बाद अद्वितीय है

एम एक chusetts गधा और एम iss यूरी

जब भी { SNW} शेष अक्षरों में अन्य अक्षरों से पहले दिखाई देते हैं , उनके बाद के अक्षर संक्षिप्त रूप में उपयोग किए जाते हैं:

एक लास k एक, एम arylan , एम ऐन , एम है रों issippi, एम पर टी एना, मैं ओउ एक

दो को छोड़ दिया। ये पहले दो अक्षरों का उपयोग करते हैं:

अल अबामा, मि चिगन


यह निश्चित रूप से गोल्फ हो सकता है:

रूबी 2 - 191 165 154 अक्षर

एक और 26 वर्णों को खंडों को थोड़ा छोटा करके बंद कर दिया जाता है। इसके अलावा, मूल रेगेक्स में से एक निरर्थक निकला!

gets;[/.* (.)/,/^[CDGHKLPV].*(.)$/,/.*([ZVX])/,/^[NFOUW](.)/,/^.([DNR])/,/.*(L|N)\1/,
/.*SS(A|O)/,/.*?[SNW](.)/,/.(.)/].find{|r|$_.upcase=~r}
puts $&[0]+$1

"वर्तमान में गोल्फस्क्रिप्ट प्रविष्टि के आकार का एक तिहाई से भी कम है!" : पी ध्यान रखें, गोल्फस्क्रिप्ट रेगेक्स का उपयोग नहीं करता है।
जोसिया विंसलो

और मैंने साइज़ बदल दिया। : पी
जोशिया विंसलो

1
(@ जोशैयाविंसलो और ओह, कि 3.9575757575 ...: P)
daniero

6
विवरण में स्तन regex के लिए योग्य कि संपीड़न नहीं बचा
मास्टरएक्स 244

1
मुझे यह उत्तर पसंद है, लेकिन यह मान्य नहीं है क्योंकि यह अमान्य इनपुट को स्पॉट नहीं कर सकता (जैसा कि आप कहते हैं)। एक विशिष्ट उदाहरण भी हैIf something like New Yrok is passed in, the function should return the original value.
edc65

4

सी#

मैंने राज्यों में पहले से ही राज्य स्ट्रिंग को छोटा करने के लिए वर्णों का उपयोग किया।

public string GetAbbr(string state)
            {

                var states =
                    new[] {
                        "AlasKa", "ALabama", "AriZona", "ARkansas", "CAlifornia", "COlorado", "ConnecticuT",
                        "DElaware", "FLorida", "GeorgiA", "HawaiI", "IDaho", "ILlinois", "INdiana", "IowA", "KansaS",
                        "KentuckY", "LouisianA", "MainE", "MarylanD", "MAssachusetts", "MIchigan", "MinNnesota",
                        "MiSsissippi", "MissOuri", "MonTana", "NEbraska", "NeVada", "New Hampshire", "New Jersey",
                        "New Mexico", "New York", "North Carolina", "North Dakota", "OHio", "OKlahoma", "ORegon",
                        "PennsylvaniA", "Rhode Island", "South Carolina", "South Dakota", "TeNnessee", "TeXas", "UTah",
                        "VermonT", "VirginiA", "WAshington", "washington D.C.", "West Virginia", "WIsconsin", "WYoming"
                    };
                var all = states.ToDictionary(st => string.Concat(st.Where(char.IsUpper)));

                var wanted = all.FirstOrDefault(pair => state.ToUpper().Equals(pair.Value.ToUpper()) || state.ToUpper().Equals(pair.Key));

                return wanted.Key ?? state;
            }

1
अच्छा काम!
बीटा डेके

2

जावास्क्रिप्ट (E6)

यहां थोक नामों की सूची है, थोड़ा सा छोटा करने के लिए कैमलकेस ट्रिक का उपयोग करना । गोल्फ, 617 बाइट्स।

F=i=>
  "AkAlAzArCaCoCtDeFlGaHiIdIlInIaKsKyLaMeMdMaMiMnMsMoMtNeNvNhNjNmNyNcNdOhOkOrPaRiScSdTnTxUtVtVaWaWvWiWyAlaskaAlabamaArizonaArkansasCaliforniaColoradoConnecticutDelawareFloridaGeorgiaHawaiiIdahoIllinoisIndianaIowaKansasKentuckyLouisianaMaineMarylandMassachusettsMichiganMinnesotaMississippiMissouriMontanaNebraskaNevadaNew hampshireNew jerseyNew mexicoNew yorkNorth carolinaNorth dakotaOhioOklahomaOregonPennsylvaniaRhode islandSouth carolinaSouth dakotaTennesseeTexasUtahVermontVirginiaWashingtonWest virginiaWisconsinWyoming"
  .match(/.[^A-Z]*/g).map((w,q)=>U(w,U(w)==U(i)?p=q%50:p),U=s=>s.toUpperCase(),p=-1)[p]||i

0

अजगर

कोड-गोल्फ चुनौती के रूप में ऐसा करने का निर्णय लिया। डेनियरो और hsl की मदद से इसे 906 713 694 वर्णों तक नीचे लाया गया:

s='AK,AL,AZ,AR,CA,CO,CT,DE,FL,GA,HI,ID,IL,IN,IA,KS,KY,LA,ME,MD,MA,MI,MN,MS,MO,MT,NE,NV,NH,NJ,NM,NY,NC,ND,OH,OK,OR,PA,RI,SC,SD,TN,TX,UT,VT,VA,WA,WV,WI,WY,ALASKA,ALABAMA,ARIZONA,ARKANSAS,CALIFORNIA,COLORADO,CONNECTICUT,DELAWARE,FLORIDA,GEORGIA,HAWAII,IDAHO,ILLINOIS,INDIANA,IOWA,KANSAS,KENTUCKY,LOUISIANA,MAINE,MARYLAND,MASSACHUSETTS,MICHIGAN,MINNESOTA,MISSISSIPPI,MISSOURI,MONTANA,NEBRASKA,NEVADA,NEW HAMPSHIRE,NEW JERSEY,NEW MEXICO,NEW YORK,NORTH CAROLINA,NORTH DAKOTA,OHIO,OKLAHOMA,OREGON,PENNSYLVANIA,RHODE ISLAND,SOUTH CAROLINA,SOUTH DAKOTA,TENNESSEE,TEXAS,UTAH,VERMONT,VIRGINIA,WASHINGTON,WEST VIRGINIA,WISCONSIN,WYOMING'.split(",")
x=input().upper()
print(s[s.index(x)%50]if x in s else x)

हालांकि, अगर मॉड्यूल की अनुमति है ( हमारे मॉड्यूल की तरह ), तो मैं इसे 130 चार्ट तक नीचे ला सकता हूं:

import us
i=raw_input()
x=us.states.lookup(i)
print x.abbr if x else i

और अगर आपको मूल मूल्य वापस नहीं करना है, जब राज्य मौजूद नहीं है तो मैं इसे 50 चार्ट तक प्राप्त कर सकता हूं:

import us
print us.states.lookup(raw_input()).abbr

आप पहले एक पर लगभग 200 अक्षरों को sएक बड़ी स्ट्रिंग होने से बचा सकते हैं , फिर इसे कॉमा पर विभाजित कर सकते हैं ( ,); सभी एकल-उद्धरणों के लिए कोई ज़रूरत नहीं है।
डेनिएरो

@daniero विश्वास नहीं कर सकता कि मैंने ऐसा नहीं सोचा था! अब करेंगे।
जेम्स विलियम्स

आप वाशिंगटन, डीसी को हटा सकते हैं, क्योंकि यह अमेरिकी राज्य नहीं है।
निन्जाबियरमोंकी

@ एचएसएल धन्यवाद। मैंने उन राज्यों की सूची से सूची प्राप्त की जो मुझे ऑनलाइन मिले थे, एहसास नहीं था कि वाशिंगटन डीसी वहां था।
जेम्स विलियम्स

0

बैश + सेड, 291 बाइट्स

डेनियरो के रूबी समाधान के शामक रूपांतरण के बेशर्म रूपांतरण:

echo $*|tr a-z A-Z|sed -e\
"/\(.\).* \(.\).*/b1;/^\([CDGHKLPV]\).*\(.\)$/b1;/^\(.\).*\([ZVX]\).*/b1;\
/^\([NFOUW]\)\(.\).*/b1;/^\(.\)\([DNR]\).*/b1;/^\(.\).*\([LN]\)[LN].*/b1;\
/^\(.\).*SS\([AO]\).*/b1;/^\(.\).*\([ED])\)$/b1;/^\(.\).*[SNW]\(.\).*/b1;\
/\(.\)\(.\).*/b1;:1 s//\1\2/"

0

गोल्फस्क्रिप्ट - 750 653

बल्क राज्य के नाम और संक्षिप्त नाम में है।

{.96>32*-}%.,2>{"ALABAMA,AL,ALASKA,AK,ARIZONA,AZ,ARKANSAS,AR,CALIFORNIA,CA,COLORADO,CO,CONNECTICUT,CT,DELAWARE,DE,FLORIDA,FL,GEORGIA,GA,HAWAII,HI,IDAHO,ID,ILLINOIS,IL,INDIANA,IN,IOWA,IA,KANSAS,KS,KENTUCKY,KY,LOUISIANA,LA,MAINE,ME,MARYLAND,MD,MASSACHUSETTS,MA,MICHIGAN,MI,MINNESOTA,MN,MISSISSIPPI,MS,MISSOURI,MO,MONTANA,MT,NEBRASKA,NE,NEVADA,NV,NEW HAMPSHIRE,NH,NEW JERSEY,NJ,NEW MEXICO,NM,NEW YORK,NY,NORTH CAROLINA,NC,NORTH DAKOTA,ND,OHIO,OH,OKLAHOMA,OK,OREGON,OR,PENNSYLVANIA,PA,RHODE ISLAND,RI,SOUTH CAROLINA,SC,SOUTH DAKOTA,SD,TENNESSEE,TN,TEXAS,TX,UTAH,UT,VERMONT,VT,VIRGINIA,VA,WASHINGTON,WA,WEST VIRGINIA,WV,WISCONSIN,WI,WYOMING,WY"","/.@?)=}{}if

स्पष्टीकरण:

{        }%                         Map this to every character in the input string:
 .96>32*-                             Subtract 32 from the ASCII value if it's from "a" onwards.
                                      This turns every lowercase letter into an uppercase letter.
           .,2>                     Check if the input length is greater than 2.
               {              }     If it is, they inputted the full name.
                "..."                 Our string is in the form "STATE NAME,STATE ABBREVIATION".
                     ","/             We split the string at every comma to turn it into an array.
                         .@?          Then we see where the input string is in the array...
                            )=        ...then we return the value right next to it.
                               {}   If not, they inputted the abbreviation.
                                      ...do nothing.
                                 if EndIf
                                    (implied) Print the abbreviation

क्षमा करें, लेकिन मुझे अपनी पूरी स्क्रिप्ट लेने और बॉयलरप्लेट के कुछ बाइट्स के अलावा कुछ नहीं जोड़ने की बात नहीं दिख रही है; यह बस कुछ भी नहीं लाता है। लेकिन मुझे लगता है कि क्रेडिट के लिए धन्यवाद ... तुम्हारा वास्तव में, "दूसरा लड़का"।
डेनिएरो

क्षमा करें, ट्रोल प्रविष्टि। मुझे पता है कि यह एक वास्तविक प्रविष्टि नहीं है।
जोसिया विंसलो

ठीक है, मुझे तब ट्रोल किया;)
डेनिएरो

@daniero अरे, कम से कम मुझे पता है कि गोल्फस्क्रिप्ट में regexes होना संभव है! यह वास्तव में एकमात्र कारण है जो मैंने किया है: पी
जोशिया विंसलो

0

पीएचपी

मेरा प्रयास, जो मुझे उम्मीद के मुताबिक सफल नहीं था, राज्य के नाम से संक्षिप्त नाम निकालने के लिए स्ट्रिंग लंबाई और कुछ विशिष्ट चरित्र प्लेसमेंट का उपयोग करता है। संभवतः नाम उन्मूलन की कुछ बेहतर अनुक्रमण संभव है।

function findAbb ($state) {
    $first = substr($state, 0, 1);
    $last = substr($state, -2,1);
    $state = strtolower($state);
    if (strlen($state) < 4) {
        return strtoupper($state);
    }
    if (strpos($state, ' ')) { //if it's a space, return the first letter of each word.
        $space_index = strpos($state, ' ');
        $state = explode(' ', $state);
        return strtoupper(substr($state[0], 0, 1) . substr($state[1], 0, 1));
    }
    if (startsWith($state, 'io')) { //iowa is annoying, get rid of it.
        return strtoupper($first . $last);
    }
    if (startsWith($state, 'w,i')) { //if it starts with a W, return the first 2.
        return strtoupper(substr($state, 0, 2));
    }
    if (strlen($state) < 7 && strpos($state, 'm')===false) { //matches texas, ohio, and utah.
        return strtoupper($first . substr($state, -4,1));
    }
    if (strlen($state) < 7 && substr($state, 0, 1) > 'j' && substr($state, 0, 1) < 'n') { //matches maine, kansas, and hawaii
        return strtoupper($first . $last);
    }
    if (startsWith($state, 'c,d,k,l,p,v,g,h')) { //some unique states
        return strtoupper($first . $last);
    }
    if (strpos($state, 'sk')) {
        return strtoupper ('ak');
    }
    if (startsWith($state, 'k,l', 1)) {
        return strtoupper(substr($state, 0, 2));
    }
    if (startsWith($state, 'n')) {
        return strtoupper($first . substr($state, 2, 1));
    }
    if (startsWith($state, 'n', 2) || startsWith($state, 'z', 3)) { //montana, tennessee, minnesota, and arizona
        return strtoupper($first . substr($state, 3, 1));
    }
    if (startsWith($state, 'm') && ($last == 's') || ($last == 'n')) {
        return strtoupper(substr($state, 0, 2));
    }
    if (strpos($state,'o')) {
        return strtoupper($first . 'o');
    }
    if (strpos($state,'y')) {
        return strtoupper($first . 'd');
    }
    if (strpos($state,'r')) {
        return strtoupper($first . 'r');
    }
    if (strpos($state,'ss')) {
        return strtoupper($first . 's');
    }

    return $state; //otherwise return the name of the state (it was mispelled).
}

function startsWith ($state, $letters, $index = 0) { //takes a comma separated array and finds contents.
    $letters = split(',',$letters);
    for ($q = 0; $q<count($letters); $q++) {
        if (strpos($state,$letters[$q]) === $index) {
            return true;
        }
    }
    return false;
}

बेशक, यह गोल्फ हो सकता है। यह मेरा पहला गोल्फ प्रयास है, इसलिए अंतर्दृष्टि की सराहना की। (911)

function t($s){$s=u($s);$f=b($s,0,1);$l=b($s,-2,1);
if(strlen($s)<4)return $s;if(strpos($s,' '))$s=split(' ',$s);
return b($s[0],0,1).b($s[1],0,1);
if(w($s,'IO'))return $f.$l;
if(w($s,'W,I'))return b($s,0,2);
if(strlen($s)<7 && strpos($s,'M')===false)return $f.b($s,-4,1);
if(strlen($s)<7 && b($s,0,1)>'I' && b($s,0,1)<'N')return $f.$l;
if(w($s,'C,D,K,L,P,V,G,H'))return $f.$l;if(strpos($s, 'SK'))return 'AK';
if(w($s,'K,L',1))return b($s,0,2);if(w($s,'N'))return $f.b($s,2,1);
if(w($s,'N',2) || w($s,'Z',3))return $f.b($s,3,1);
if(w($s,'M') && ($l=='S') || ($l=='N'))return b($s,0,2);
if(strpos($s,'O'))return $f.'O';
if(strpos($s,'Y'))return $f.'D';if(strpos($s,'R'))return $f.'R';
if(strpos($s,'SS'))return $f.'S';return $s;}function w($s,$l,$i=0){$l=split(',',$l);
for($q=0;$q<count($l);$q++)if(strpos($s,$l[$q])===$i)return 1;return 0;}
function u($z){return strtoupper($z);}
function b($v,$x,$y){return substr($v,$x,$y);}

0

जावास्क्रिप्ट

मुझे पता है कि यह कोड गोल्फ नहीं है, लेकिन मैं इसे वैसे भी गोल्फ करना चाहता हूं। :)

var r=new XMLHttpRequest
r.open("GET","https://gist.githubusercontent.com/mshafrir/2646763/raw/f2a89b57193e71010386a73976df92d32221d7ba/states_hash.json",0)
r.send()
var o=r.responseText,m=prompt(),a=m
o=JSON.parse(o)
for(var i in o)if(o[i].toLowerCase()==m.toLowerCase())a=i
alert(a)

नई चीजों के लिए याय! (ढेर स्निपेट्स)


3
यह एक मानक खामी है और स्पष्ट रूप से उल्लेख किए बिना मानक खामियां लागू होती हैं।
इंगो बुर्क

@ IngoBürk मुझे विश्वास नहीं है कि यह मानक खामियों के तहत आता है ... यह इंटरनेट से आवश्यक डेटा प्राप्त कर रहा है उसी तरह जैसे कि एक फाइल को पढ़ना।
बीटा डेके

2
तो eval(open('a.txt'))भी मान्य है? यदि आप किसी प्रकार की फ़ाइल का उपयोग करते हैं, तो आपको उस फ़ाइल और उसके फ़ाइल नाम को भी अपने वर्ण गणना में शामिल करना होगा। (इस कोड गोल्फ, तो यह वास्तव में बहुत वैसे भी इस मामले में कोई फर्क नहीं पड़ता नहीं है।)
दरवाज़े

@Doorknob चूंकि आप इस बात को उठाते हैं कि यह कोड गोल्फ नहीं है, इसलिए मैं नहीं देखता कि मैं नीचे क्यों जा रहा हूं ... मैंने पॉप विपक्ष के किसी भी नियम का उल्लंघन नहीं किया है।
बीटा डेके

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.