একটি ব্যালট মুদ্রণ!


16

আপনারা সবাই জানেন যে, আজ নির্বাচনের দিন!

আপনার কাজ আজ একটি ব্যালট মুদ্রণ করা, একটি ইনপুট দেওয়া।

যদি ইনপুট হয় তবে Hillary Clintonমুদ্রণ করুন:

Hillary Clinton   ===-----===>
Donald Trump      ===     ===>
____________      ===     ===>

তবে ইনপুট থাকলে Donald Trumpমুদ্রণ করুন:

Hillary Clinton   ===     ===>
Donald Trump      ===-----===>
____________      ===     ===>

এটি অন্য কিছু হলে, এটি তৃতীয় লাইনে লিখুন:

Hillary Clinton   ===     ===>
Donald Trump      ===     ===>
Oliver Ni         ===-----===>

(প্রযুক্তিগতভাবে, আমি এখনও 18 বছরের নয় ...)

মনে রাখবেন, এটি , তাই সবচেয়ে কম বাইট সহ কোডটি জয়ী।


8
না "উপরের বিকল্পগুলির কোনওটিই" নয়? :)
ক্রিটসি লিথোস

@ ক্রিটিক্সিলিথোস এইচএম, না ...
অলিভার নি

8
"অন্য কিছু" নামে কোনও সর্বোচ্চ দৈর্ঘ্য? (আপনার উদাহরণগুলিতে প্রথম সমান চিহ্নের আগে 18 টি অক্ষর রয়েছে)
লিঙ্ক এনজি

1
এটা কেস সংবেদনশীল না সংবেদনশীল? পরীক্ষার মামলার বিচার করে আমি এই মুহূর্তে সংবেদনশীল অনুমান করছি।
কেভিন ক্রুইজসেন

@ ক্রিটিক্সিলিথোস কিন্তু এটি সিস্টেমকে কারচুপি করবে!
OldBunny2800

উত্তর:


6

জেলি, 55 53 বাইট

³ẇị⁾- x5⁾ =,”=x3¤j;”>ṭ
ṭ“Gụ©l⁴“%eŻƤ(»”_x12¤ṭQḣ3z⁶ZÇ€Y

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

³ẇị⁾- x5⁾ =,”=x3¤j;”>ṭ   Helper link. Argument: row
³ẇ                       Check if the user's vote is in this row
  ị⁾-                    Take "-" if it was, " " otherwise
      x5                 Take five of that character
        ⁾ =,”=           Take the array [" =", "="]
              x3         Turn it into ["   ===", "==="]
                ¤        Combine the two previous steps into a nilad
                 j       Join the list by the five character string
                  ;”>    Add ">"
                     ṭ   Prepend the original row

ṭ“Gụ©l⁴“%eŻƤ(»”_x12¤ṭQḣ3z⁶ZÇ€Y   Main link. Argument: vote
 “Gụ©l⁴“%eŻƤ(»                   Take the array ["Hillary Clinton", "Donald Trump"]
ṭ                                Add the user's vote to the list
              ”_                 Take "_"
                x12              Take twelve times that
                   ¤             Combine the two previous steps into a nilad
                    ṭ            Add that string to the list
                     Q           Remove duplicates
                      ḣ3         Take the three first items
                        z⁶       Transpose, padding with spaces
                          Z      Transpose back
                           ǀ    Apply the helper to each row
                             Y   Join with newlines

4

পাইথন 2, 127 বাইট

X=['Hillary Clinton','Donald Trump']
i=input()
X+=[[i],['_'*12]][i in X]
for x in X:print x.ljust(18)+'==='+' -'[i==x]*5+'===>'


2

জাভা 7, 390 339 335 বাইট

String c(String s){String h="Hillary Clinton",d="Donald Trump",r=h+"   ===Q===>\n"+d+"      ===X===>\nZ===J===>";boolean H=h.equals(s),D=d.equals(s);for(int i=s.length();i++<18;s+=" ");return r.replace(H?"Q":D?"X":"J","-----").replace(H|D?"Z":"~","____________      ").replaceAll(H?"X|J":D?"Q|J":"Q|X","     ").replace(H|D?"~":"Z",s);}

অবরুদ্ধ এবং পরীক্ষার কোড:

এখানে চেষ্টা করুন।

class M{
  static String c(String s){
    String h = "Hillary Clinton",
           d = "Donald Trump",
           r = h+"   ===Q===>\n"+d+"      ===X===>\nZ===J===>";
    boolean H = h.equals(s),
            D = d.equals(s);
    for(int i = s.length(); i++ < 18; s += " ");
    return r.replace(H?"Q":D?"X":"J", "-----")
            .replace(H|D?"Z":"~", "____________      ")
            .replaceAll(H?"X|J":D?"Q|J":"Q|X", "     ")
            .replace(H|D?"~":"Z", s);
  }

  public static void main(String[] a){
    System.out.println(c("Hillary Clinton"));
    System.out.println();
    System.out.println(c("Donald Trump"));
    System.out.println();
    System.out.println(c("Anyone else?.."));
    System.out.println();
    System.out.println(c("S"));
    System.out.println();
    System.out.println(c("Anyone who is willing to take the job"));
  }
}

আউটপুট:

Hillary Clinton   ===-----===>
Donald Trump      ===     ===>
____________      ===     ===>

Hillary Clinton   ===     ===>
Donald Trump      ===-----===>
____________      ===     ===>

Hillary Clinton   ===     ===>
Donald Trump      ===     ===>
Anyone else?..    ===-----===>

Hillary Clinton   ===     ===>
Donald Trump      ===     ===>
S                 ===-----===>

Hillary Clinton   ===     ===>
Donald Trump      ===     ===>
Anyone who is willing to take the job===-----===>

2

জাভাস্ক্রিপ্ট (ES6), 149 বাইট

s=>['Hillary Clinton','Donald Trump',0].map(S=>((S?S:s||'____________')+p+p+p+p+p).slice(0,18)+`===${!S^S==s?(s=0,'-----'):p}===>`,p='     ').join`
`

ডেমো


1

ভি , 104 বাইট

OHillary Clinton³ ³=µ ³=>YpRDonald Trump   p15r_ñ/^¨á« ᫾©.*î¨.*î©*\1
22|5r-Gdññ3GjéRDk@"Í_/ 
22|5r-

এটি অনলাইন চেষ্টা করুন!

এই উত্তরটি উপায় খুব হ্যাকি এবং অনেক দীর্ঘ। আমি অনুমান করি আপনি যখন কোনও পাঠ্য-সম্পাদকের বাইরে গল্ফিং-ল্যাঙ্গুয়েজ ডিজাইন করেন তখন আপনি এটি পাবেন।¯\_(ツ)_/¯


অপেক্ষা করো কি করে O? দেখে মনে হচ্ছে এটি এর মতো কাজ করেi
কনর ও'ব্রায়ান

@ আইকনর এটি সঠিক, তারা দুজনই সন্নিবেশ মোডে প্রবেশ করে। পার্থক্য কেবলমাত্র বাফারে যেখানে কার্সার শুরু হয়। এগুলিও আছে iIaAoOsSRযে সমস্ত
কোনওভাবে

0

ব্যাচ, 210 বাইট

@set s=%1
@call:l %1 "Hillary Clinton"
@call:l %1 "Donald Trump"
@call:l %1 %s%
@exit/b
:l
@set v=     
@if %1==%2 set v=-----&set s=____________
@set t=%~2                  
@echo %t:~0,18%===%v%===^>

দ্রষ্টব্য: লাইনের @set v=5 টি ট্রেলিং স্পেস রয়েছে এবং লাইনের @set t=%~218 টি রয়েছে a উদ্ধৃত কমান্ড-লাইন প্যারামিটার হিসাবে ইনপুট গ্রহণ করে।


0

সি #, 266 বাইট

Golfed:

string B(string s){var h="Hilary Clinton".PadRight(17);var d="Donald Trump".PadRight(17);var r="===     ===>\n";var c=r.Replace(" ", "-");var b="____________".PadRight(17);return s==h.Trim()?s.PadRight(17)+c+d+r+b+r:s==d.Trim()?h+r+d+c+b+r:h+r+d+r+s.PadRight(17)+c;}

Ungolfed:

public string B(string s)
{
  var h = "Hilary Clinton".PadRight(17);
  var d = "Donald Trump".PadRight(17);
  var r = "===     ===>\n";
  var c = r.Replace(" ", "-");
  var b = "____________".PadRight(17);
  return s == h.Trim() ? s.PadRight(17) + c + d + r + b + r :
    s == d.Trim() ? h + r + d + c + b + r :
      h + r + d + r + s.PadRight(17) + c;
}

এই সমস্ত প্যাডরাইটের জন্য একটি ফানক তৈরি করার চেষ্টা করা হয়েছিল ... ঠিক একই বাইট গণনা ...

পরীক্ষামূলক:

var printABallot = new PrintABallot();
Console.WriteLine(printABallot.B("Hilary Clinton"));

Hilary Clinton   ===-----===>
Donald Trump     ===     ===>
____________     ===     ===>


Console.WriteLine(printABallot.B("Donald Trump"));

Hilary Clinton   ===     ===>
Donald Trump     ===-----===>
____________     ===     ===>


Console.WriteLine(printABallot.B("Kanye West"));

Hilary Clinton   ===     ===>
Donald Trump     ===     ===>
Kanye West       ===-----===>


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.