দশশত অতি সাধারণ শব্দ


9

এই প্রশ্নটি এই কারণেই লেখা হয়েছে যে "থিং ব্যাখ্যাকারী" পড়তে মজাদার এবং আমাকে একটি ধারণা দিয়েছে।

"স্টাফ যা কম্পিউটারকে জিনিসগুলি করে তোলে" লিখুন যা চিঠিপত্র, সংখ্যা এবং এর মতো জিনিসগুলির একটি সেট পড়ে / নেয় "#%|?এবং True / 1যদি সমস্ত শব্দ এই সেটটির অংশ হয় তবে ফিরে আসে ।

সমস্ত শব্দ যদি সেটের অংশ না হয় তবে যে শব্দগুলি এর অংশ ছিল না তা ফিরে দিন।


এই ওয়েবসাইটটি সব ক্ষেত্রেই সঠিক বিবেচনা করা যেতে পারে। নিয়মগুলি সেই সাইটে চশমা অনুসরণ করতে লেখা হয়।


উদাহরণ:

সত্যবাদী :

প্রথম অনুভূমিক রেখার উপরের পুরো পাঠ্যটি যদি ইনপুট হিসাবে আটকানো হয় তবে কোডটির সত্যতা মানটি ফিরিয়ে দেওয়া উচিত।

নিম্নলিখিত লাইনগুলি সত্যবাদী মানটি ফিরিয়ে আনবে (ইনপুট দ্বারা আলাদা করা হবে ###)

This returns "Hello, World!"
###
tHiS rEtUrNs TrUe...
###
Thing Explainer is a book written by a man.
The man writes books with simple words.
###
This set of stuff "#!^{>7( must return true

মিথ্যা :

নিম্নলিখিত উদাহরণগুলিতে ইনপুট এবং আউটপুট দ্বারা পৃথক করা হয় ***। বিভিন্ন পরীক্ষার কেস দ্বারা পৃথক করা হয় ###

This code doesn't return "Hello, World!"
***
code
###
tHiS rEtUrN"s false...
***
s
false

আরও বিস্তারিত বিধি:

  • আপনি ব্যবহার করতে পারেন এই আপনার কোড পরীক্ষা করা হবে।
  • নন-অক্ষরগুলি কোড দ্বারা ফাঁকা হিসাবে ব্যাখ্যা করা হয়, যেমন শব্দ বাদে 'wasn't'। প্রত্যাবর্তনগুলি সহ শব্দগুলি trueতালিকাতে অন্তর্ভুক্ত
    • উদাহরণস্বরূপ: foo123barফিরে আসা উচিত fooএবং barযেহেতু তারা তালিকার অংশ নয়, এবং 123স্পেস হিসাবে ব্যাখ্যা করা যেতে পারে
  • ইনপুটটিতে কেবল প্রিন্টযোগ্য এএসসিআইআই কোড পয়েন্ট থাকবে [10, 32-126]।
  • শব্দগুলিতে মিশ্র কেস লেটার থাকতে পারে। দ্বিতীয় পরীক্ষার কেস দেখুন।
  • শব্দের তালিকা
    • ইনপুট হিসাবে নেওয়া উচিত (STDIN, ফাংশন আর্গুমেন্ট বা সমতুল্য)
    • সংশোধন করা যেতে পারে (শব্দগুলি নিউলাইন, কমা ইত্যাদি দ্বারা পৃথক করা যায় এবং আপনি তালিকাটি বাছাই করতে পারেন)
    • মনে রাখবেন আপনি এই তালিকাটি ব্যবহার করতে পারবেন না (এটি অভিন্ন নয়)
  • আউটপুট আপনার পছন্দ মতো যে কোনও ফর্ম্যাটে থাকতে পারে
  • আউটপুট উচ্চ, নিম্ন বা মিশ্র কেস হতে পারে (alচ্ছিক)
  • আউটপুটে কোনও চিহ্ন থাকবে না

রেকর্ডটির জন্য, জোনাথন অ্যালান একটি অদ্ভুত কর্নার কেসটি আবিষ্কার করেছেন: এক্স কেসিডি-তে বাস্তবায়ন পরবর্তী অ-[এজেড] [এজে] ['] - পর্যন্ত অ্যাডাস্ট্রোফের পরে কোনও অক্ষরকে অগ্রাহ্য করবে - উদাহরণস্বরূপ find's found, এবং find'qazxswedc found'উভয় কিছুই ফেরত দেয় না, যেখানে find'qazx.swedc foundফিরে আসে swedc

আপনি যদি কিছু না ফেরত চান find'qazxswedc found'বা ফিরে চান তবে আপনি চয়ন করতে পারেন qazxswedc। এর qazx, swedcজন্য ফিরে আসাও find'qazx.swedcঠিক আছে।



আমি ইতিবাচক নই যদিও এটি এক ধাপ। আপনার চ্যালেঞ্জটি কিছুটা পৃথক, যেহেতু আপনাকে সাধারণ-সরল শব্দগুলি ফেরত দেওয়া দরকার। এবং, আপনার পক্ষে, আপনার কাছে প্রতিদিনের ইংরেজিতে একটি সাধারণ স্পেস লেখা থাকে। কোডগল্ফ.স্ট্যাকেক্সেঞ্জাওয়েজ
জেমস

স্ট্যাটিকালি টাইপ করা ভাষার জন্য যা ফেরতের ধরণ প্রকাশ করতে পারে না Booleanবা Array<String>, খালি অ্যারে / তালিকাটি ফেরত দেওয়া কি অনুমোদিত হবে?
CAD97

@ CAD97 যে ক্ষেত্রে সমস্ত শব্দ সহজ? আপনি কীভাবে সত্যবাদী মানটি প্রদর্শন করতে চান তা নির্বাচন করতে পারেন, এটি একটি পূর্ণসংখ্যা / স্ট্রিং হতে পারে 1। একটি খালি আউটপুট অনুমোদিত নয়।
স্টিভি গ্রিফিন

আমি find'qazxswedcইনপুট সংক্রান্ত নিয়মের নতুন ব্যাখ্যা দ্বারা বিভ্রান্ত হয়ে পড়েছি । আমরা বা আমাদের এস্ট্রোফেসে বিভক্ত হওয়ার কথা নয়? উদাহরণস্বরূপ, isn'tরিটার্নগুলি true(এটি তালিকায় রয়েছে), তবে isnফিরে আসে isn, যেহেতু তালিকায় নেই। এই যুক্তি থেকে, আমি "অ্যাস্টোস্ট্রোফের উপর বিভক্ত হবে না" এবং তাই find'qazxswedc foundফিরে এসেছি find'qazxswedc
অ্যাডমবর্কবার্ক

উত্তর:


2

পাওয়ারশেল v3 +, 105 92 বাইট

param($a,$b)$x=@();-split($b-replace"[^a-zA-Z']",' ')|%{if($_-notin$a){$x+=$_}};($x,1)[!$x]

সাধারণ শব্দ যেমন $aএবং শব্দ পছন্দ করে $b। সাহায্যকারী করে তোলে $x। প্রতিটি শব্দ প্রবেশ $bকরান এবং কোনও খারাপ অক্ষর নয়, পরিত্রাণ পান, তারপরে প্রতিটি শব্দ পরীক্ষা করুন |{...}। যদি সেই শব্দটি না থাকে $a, তবে আমরা এটিকে যুক্ত করব $x। শেষে, আমরা চয়ন $xবা 1না করে $x। এটি বাইরে পাঠানো হয়, হয় wordsবা হয় 1

কিছু শব্দ চেষ্টা করার

PS C:\Tools\Scripts\golfing> ('This returns "Hello, World!"','tHiS rEtUrNs TrUe...','Thing Explainer is a book written by a man.
The man writes books with simple words.','This set of stuff "¤!^¤>7\ must return true'|%{"$_";(.\ten-hundred-most-common-words.ps1 (gc .\ten-hundred-most-common-words.txt) $_)})-join"`n###`n"
This returns "Hello, World!"
###
1
###
tHiS rEtUrNs TrUe...
###
1
###
Thing Explainer is a book written by a man.
The man writes books with simple words.
###
1
###
This set of stuff "¤!^¤>7\ must return true
###
1

PS C:\Tools\Scripts\golfing> ("This code doesn't returns Hello, World!",'tHiS rEtUrN"s false...'|%{"$_`n***`n"+(.\ten-hundred-most-common-words.ps1 (gc .\ten-hundred-most-common-words.txt) $_)})-join"`n###`n"
This code doesn't returns Hello, World!
***
code
###
tHiS rEtUrN"s false...
***
s false

2

পাইথন, 93 বাইট

import re
lambda w,s:[w for w in re.sub("[^'\w]|\d|_",' ',w).split()if w.lower()not in s]or 1

সমস্ত পরীক্ষার কেস আদর্শে

তালিকার প্রাক-প্রক্রিয়াকরণ উপর বিভক্ত হয় |এবং এটা করা set(যা আমি কল্পনা জরিমানা প্রাক বাছাই অনুমোদিত কিনা আপনি তা যায়)। হিসাবে শব্দগুলি wএবং সেট হিসাবে ইনপুট করুন s

যদি এটি অনুমোদিত না হয় তবে এটি হয়ে not in sউঠতে 98 বাইট হয়ে যায় not in set(s)

আমরা এটিকে উচ্চতর এবং নিম্নের অক্ষরের সমস্ত অনুমতি থাকতে পারে এবং 8 বাইট সংরক্ষণ করতে পারি, তবে আমি মনে করি এটি সম্ভবত খুব বেশি দূরে চলে যাবে (এটি একটি বিশাল সেট হবে)।

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