আর কোডের কুৎসিত লাইনটি এখনও পার্স করে?


19

লক্ষ্যটি হ'ল আর কোডের একক লাইন উত্পাদন করা যা:

  1. যতটা সম্ভব কম করে
  2. যতটা সম্ভব অক্ষরে (সর্বোচ্চ 100 টি অক্ষর)
  3. এবং যতটা সম্ভব কুশ্রী (যেখানে "কুশ্রী" মানেই অদক্ষ গণনার কৌশল, বহির্মুখী অক্ষর যেমন একটি সমাপ্তি সেমিকোলন ইত্যাদির অর্থ নেওয়া যেতে পারে)।

আপনার সবচেয়ে খারাপ, ভদ্রলোক করুন!

জয়ের জন্য উদ্দেশ্যমূলক মানদণ্ড

বিজয়ী উত্তর নিম্নলিখিত পয়েন্ট স্কেল (সবচেয়ে পয়েন্ট জিত উত্তর) অনুযায়ী বিচার করা হবে:

  • 0 থেকে 10 ( 100 পয়েন্ট) পর্যন্ত একটি ক্রম তৈরি করুন
  • যতটা সম্ভব অক্ষরে (এন) সম্ভব
    • এন = 100 হলে 0 পয়েন্ট
    • N-100 পয়েন্টগুলি যদি এন <100 (অর্থাত 100 এর নীচে প্রতিটি চরিত্রের জন্য একটি পয়েন্ট হারাতে পারে)
    • 2 (100-এন) পয়েন্টগুলি যদি এন> ১০০ হয় (অর্থাত প্রতি ১০০ অক্ষরের জন্য দুটি পয়েন্ট হারাবেন)
  • আর ইনফার্নো যতটা সম্ভব নেতিবাচক উদাহরণ ব্যবহার করে
    • উদ্ধৃত উদাহরণ প্রতি 6 পয়েন্ট
    • প্রতিটি উদাহরণ কেবল একবার গণনা করে। এটি এমন কারণ যে "ধর্মান্তরককে [জ্বলন্ত সমাধির কারাগারে বন্দী" কেবলমাত্র একবারেই কারাবন্দী করা যেতে পারে। সুতরাং আপনার কোড লাইনে দুটি গ্লোবাল অ্যাসাইনমেন্ট কেবল আপনাকে 6 পয়েন্ট নেট করে।

উদ্দেশ্যমূলক জয়ের মানদণ্ড নয়। এফএকিউ দেখুন।
ডিএমকেেকে

4
আপনি @ ডিএমকেকে এফএকিউ :) মাপদণ্ডটি বেশ উদ্দেশ্যমূলক
টমাস

আমি মাপদণ্ডটিকে আরও সুস্পষ্ট করার চেষ্টা করেছি। 3 মাপদণ্ড যদি এখনও পর্যাপ্ত উদ্দেশ্য না হয় তবে আমি এটিকে অপসারণ করতে পারি, যদিও আমি এটি পছন্দ করি।
এরি বি ফ্রেডম্যান

আমি নতুন স্কোরিং সিস্টেমটি মোটেই বুঝতে পারি না। উদ্দেশ্য 2 যথাসম্ভব দীর্ঘ হতে হবে (সর্বাধিক 100 টি অক্ষরের সাপেক্ষে), এবং আপনি 100 এর কাছাকাছি থাকার জন্য কম পয়েন্ট দেন (এবং 100% এর চেয়ে বেশি প্রোগ্রামের জন্য পয়েন্টগুলি নির্দিষ্ট করুন!)); উদ্দেশ্য 3 যতটা সম্ভব কুশল হওয়া, এবং আপনি কুরুচিপূর্ণ প্রোগ্রামগুলির জন্য আরও পয়েন্ট দিন more সুতরাং পয়েন্টগুলি ভাল বা খারাপ বলে মনে হচ্ছে ?!
পিটার টেলর

@ পিটারটেলর সম্পাদিত যে নির্দেশিত যে দুটি উদ্দেশ্য # 2 সূত্র নেতিবাচক পয়েন্ট উত্পাদন করে। পয়েন্টগুলি ভাল: "সর্বাধিক পয়েন্টের উত্তর"।
এরি বি ফ্রেডম্যান

উত্তর:


25

72 96 টি অক্ষর।

`c`<-function(...){list(...)[[-1]];}->>`c`;`[`=0;`]`=10;c(c,c)(c,c)(c,invisible)(`[`[]:`]`[])[];

কদর্যতা:

  • একটি স্ট্যান্ডার্ড ফাংশন নাম পুনরায় ব্যবহার করা হচ্ছে
  • পরিবর্তনশীল নাম হিসাবে প্রতীক ব্যবহার
  • গ্লোবাল অ্যাসাইনমেন্ট
  • রাইট অ্যাসাইনমেন্ট
  • ফাংশনের স্ব-সংজ্ঞা
  • অপ্রয়োজনীয় ট্রেইলিং সেমিকোলন
  • অপ্রয়োজনীয় সাব-স্ক্রিপ্টিং নম্বর
  • পরিবর্তনশীল নামের অপ্রয়োজনীয় উদ্ধৃতি
  • কর্মক্ষেত্রে একটি রাজ্যে রেখে দেয় যা পরবর্তী কোনও কোড রান অবশ্যই প্রায় ভেঙে দেয়

0-10 অনুক্রমটি তৈরি করে (এন্ড্রি করার জন্য ধারণাটির জন্য ধন্যবাদ)।

আউটপুট:

 [1]  0  1  2  3  4  5  6  7  8  9 10

4
এটি সত্যই অবজ্ঞাপূর্ণ। এই প্রথম আমি এই শব্দটি প্রশংসা হিসাবে ব্যবহার করেছি। অন্যদিকে, কারও পক্ষে অবহেলা করা এবং সতর্ক সমালোচনা থেকে শেখার পক্ষে এটি একটি দুর্দান্ত কাজ। ভাল কাজ.
ইলেটর

উজ্জ্বল। আমার মাথার উপরের দিক থেকে, 3,4,5,8,9 অবৈধ সংস্থাগুলি ইনফার্নোতে রয়েছে। সুতরাং যে গ্রেডিং মানদণ্ড দ্বারা 96 + 6 * 5 = 126 পয়েন্ট।
এরি বি ফ্রেডম্যান

উজ্জ্বল সমাধান। আরও একটি কদর্যতা 100 + চর যোগ করা হয়েছে। সমস্ত "একক উদ্ধৃতি সহ প্রতিস্থাপন করুন issues এম্বেডিংয়ের সমস্যা রয়েছে"<-"("c",function(...){list(...)[[-1]];}->>"c");"["=0;"]"=10;c(c,c)(c,c)(c,invisible)("["[]:"]"[])[]
Vlo

7

0 থেকে 10 পর্যন্ত একটি ক্রম তৈরি করুন।

100 টি অক্ষর

{.=0;for(`~1` in c(1,2,3,4,5,6,7,8,9,10)){.=c(., `~1`,recursive=F)};print(unname(.[drop=T]));rm(.)}
 [1]  0  1  2  3  4  5  6  7  8  9 10

5

100 টি অক্ষর: 1 থেকে 10 পর্যন্ত একটি ক্রম তৈরি করুন।

নোট করুন যে 2-10 নম্বরগুলি কোডে নেই ... - বোনাস পয়েন্ট? :-)

এটি নোট করুন যে এটি lapplyসর্বাধিক পারফরম্যান্সের জন্য ব্যবহার করে :)

unlist(lapply(LETTERS[-(11:26)],function(x) as.integer(charToRaw(x))-as.integer(charToRaw('A'))+1L))
#[1]  1  2  3  4  5  6  7  8  9 10 

2

100 টি অক্ষর

assign("a",1:10);b<<-paste(c(a),collapse=";");unlist(lapply(strsplit(b,";")[[1]],function(c)c[[1]]))

নিশ্চিত হতে পারছি না যদি lapplyউপর strsplitএকটি নেতিবাচক উদাহরণ কিন্তু এটা নিশ্চিত করা উচিত নয়।

একটি চরিত্র হিসাবে ফিরে:

 [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10"

1
I(cumsum(Reduce("sum", replicate(paste0(as.integer(T),as.integer(T)), T), accumulate=1-F) - T >0))

এর তুলনায় 100 টির চেয়ে কম অক্ষর থাকতে হবে এবং একরকম 0:10 উত্পাদন করে


1
আমি 98 টি গণনা করি nchar, স্পেস গণনা করি। যদিও আমার সিস্টেমে replicateদৈর্ঘ্যের আর্গুমেন্ট হিসাবে কোনও অক্ষর ভেক্টর নিতে পারে না।
এরি বি ফ্রেডম্যান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.