क्या बस लोड कानूनी है?


15

मैं आज बस में था, और इस संकेत पर गौर किया:

      seated    standing    wheelchairs
max1    37         30            00
max2    36         26            01
max3    34         32            00

बैठने वाले यात्रियों की संख्या, स्टैंड, और व्हीलचेयर सभी को तालिका में कुछ पंक्ति से बड़ा नहीं होना चाहिए। (विवरण के लिए चैट देखें)

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

उपरोक्त मैट्रिक्स के साथ जैसे:
30,25,1[1](0-अनुक्रमित) [2](1-अनुक्रमित) या [false,true,false](बूलियन) या ["Abe","Bob","Abe"](दो अद्वितीय मूल्य आदि)।

निम्नलिखित परीक्षण मामले उपरोक्त मैट्रिक्स का उपयोग करते हैं और झूठे / सच के लिए 0/1:
[30,30,0][1,0,1]
[30,31,0][0,0,1]
[35,30,0][1,0,0]
[0,0,1][0,1,0]
[0,0,0][1,1,1]
[1,2,3][0,0,0]

निम्नलिखित परीक्षण मामले निम्न मैट्रिक्स का उपयोग करते हैं:
1 2 0 4
2 3 0 2

[1,2,1,2][0,0]
[1,3,0,1][0,1]
[1,2,0,3][1,0]
[1,2,0,1][1,1]


क्या मैं इस चुनौती को गलत समझ रहा हूं या इसलिए इसे कवर किया जा [30,31,0]सकता [1, 1, 1]है max3?
ओकेक्स

क्या सत्य मूल्यों की अदला-बदली की अनुमति है? (उदाहरण के लिए 0और किसी भी झूठे के स्थान पर कोई भी 1
सत्य मान

@ ओक्स आप कुछ गलत समझ रहे हैं। [x,31,z]नियम बाहर हैं max1और max2क्योंकि वे 31 स्टैंड की अनुमति नहीं देते हैं।
अड्म

@ Mr.Xcoder है कि आम तौर पर इस तरह की चुनौतियों में अनुमति दी?
17

मैं सोचता था (देखें (2) ) ( मार्टिन की टिप्पणी भी देखें ) यह डिफ़ॉल्ट रूप से अनुमति है, लेकिन मुझे एक मेटा सहमति नहीं मिली है। मैं इस मेटा प्रश्न को पोस्ट करके आगे बढ़ा हूं , जिसका निष्कर्ष यह है कि ओपी को पहले पूछा जाना चाहिए। मैं आमतौर पर इसकी अनुमति देता हूं, मुझे इसका कारण नहीं दिखता कि उन्हें अदला-बदली क्यों नहीं करनी चाहिए।
श्री Xcoder

जवाबों:



6

हास्केल, 22 20 बाइट्स

map.(or.).zipWith(>)

Falseकानूनी है और Trueनहीं तो लौटाता है ।

इसे ऑनलाइन आज़माएं!

रिटर्न मानों के रूप में फ़्लिपिंग ट्रू / फाल्स 2 बाइट्स बचाता है (धन्यवाद @ user202729!)। साथ Trueकानूनी यह के लिए map.(and.).zipWith(<=)(22 बाइट्स)। इसे ऑनलाइन आज़माएं!


आउटपुट में सही और गलत फ़्लिप करने से परिणाम कम हो जाता है।
user202729

4

ऑक्टेव , 15 बाइट्स

@(a,b)all(a>=b)

इसे ऑनलाइन आज़माएं!

Sundar की टिप्पणी के अनुसार, पारगमन को छोड़ने से 2 बाइट्स बचते हैं।


ओपी मैट्रिक्स को प्रश्न में दिखाए गए बदलाव के रूप में लेने की अनुमति देता है, और आप bपंक्ति वेक्टर के बजाय कॉलम वेक्टर के रूप में ले सकते हैं (क्योंकि यह एक सूची के रूप में निर्दिष्ट है), 2 बाइट्स की बचत: इसे ऑनलाइन आज़माएं!
सूंदर -

3

MATL , 3 बाइट्स

<~A

इसे ऑनलाइन आज़माएं!

इनपुट मैट्रिक्स को प्रश्न में प्रारूप के हस्तांतरण के रूप में लेता है (जैसा कि ओपी द्वारा अनुमति है), एक कॉलम प्रति कॉन्फ़िगरेशन के साथ। झूठी और सच्ची के लिए बूलियन 0 और 1 आउटपुट।


3

आर , 32 30 26 बाइट्स

function(x,y)!colSums(x<y)

इसे ऑनलाइन आज़माएं!

मैट्रिक्स को ट्रांसपोज़्ड रूप में स्वीकार करता है x, जैसा कि टेस्ट कॉन्फिगy । बूलियन का एक वेक्टर लौटाता है।

प्रारंभिक -2 बाइट्स का धन्यवाद मेल करने के लिए, और आगे जेसी द्वारा -4।


2
फंक्शन बॉडी
लगाने के


2

जेली , 3 बाइट्स

<Ẹ€

इसे ऑनलाइन आज़माएं!

0= सत्य, 1= मिथ्या।


यदि मानों की आवश्यकता अलग नहीं है, तो काम करेगा
श्री एक्सकोडर

@ Mr.Xcoder मुझे नहीं लगता कि वह विकल्प यहां दिया गया है। मुझे लगता है कि मैं इंतजार करूंगा और देखूंगा।
आउटगॉल्फ


1
@ Mr.Xcoder Hm, ऐसा लगता है कि वास्तव में "सत्य-मिथ्या" नहीं है, बल्कि "मिथ्या-सत्य" है, जो दुर्भाग्य से चुनौती नहीं मांगता है।
आउटगोल्फर

@ Mr.Xcoder जेली की जरूरत है
अड्म




2

रेटिना 0.8.2 , 57 बाइट्स

\d+
$*
;(?=.*;(.*))
;$1¶
%(+`,1*(1*)(;.*),\1$
$2
(1*);\1$

इसे ऑनलाइन आज़माएं! लिंक में परीक्षण मामले शामिल हैं, लेकिन आउटपुट सभी एक साथ चलाया जाता है। स्पष्टीकरण:

\d+
$*

यूनीरी में बदलें।

;(?=.*;(.*))
;$1¶

मैट्रिक्स की प्रत्येक पंक्ति को सूची की अपनी प्रति दें।

%(

मैट्रिक्स की प्रत्येक पंक्ति पर अलग से काम करते हैं।

+`,1*(1*)(;.*),\1$
$2

बार-बार पंक्ति और सूची के अंतिम नंबर को हटा दें जबकि पंक्ति की अंतिम संख्या कम से कम सूची के जितनी बड़ी हो।

(1*);\1$

फिर सूची में एक नंबर छोड़ दिया जाना चाहिए और पंक्ति में संख्या कम से कम उतनी बड़ी होनी चाहिए।




1

05AB1E , 5 बाइट्स

εs<›P

इसे ऑनलाइन आज़माएं या सभी परीक्षण मामलों को सत्यापित करें

स्पष्टीकरण:

दुर्भाग्य से 05AB1E v1 के लिए 1-char बिलिन नहीं है या , इसलिए मैं उपयोग करने से पहले प्रत्येक मूल्य को घटाता हूं 05AB1E v2 जो वर्तमान में विकास में है, इन बिल्डरों में होगा।

ε        # For-each row of the (implicitly input) matrix:
 s       #  Swap, so the (implicitly input) list is at the top of the stack
  <      #  Decrease every value in the input-list by 1
         #   i.e. [30,25,1] → [29,24,0]
        #  Check for each value in the matrix-row if they're larger
         #  than the input-list value at the same index
         #   i.e. [37,30,0] and [29,24,0] → [1,1,0]
    P    #  Then take the product of these checks
         #   i.e. [1,1,0] → 0



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