अंतरराष्ट्रीय मानक कागज आकारों के आउटपुट उपखंड


11

आईएसओ पेपर आकार परिभाषित:

निम्नलिखित आवश्यकताओं द्वारा श्रृंखला श्रृंखला के आकार को परिभाषित किया गया है:

The length divided by the width is the square root of 2.
The A0 size has an area of 1 unit.
Each subsequent size A(n) is defined as A(n-1) cut in half parallel to its shorter sides.

यहाँ छवि विवरण दर्ज करें

कार्य:

एक इनपुट f[n]आउटपुट दिया गया A0 जो उपविभागों में विभाजित है n

परीक्षण के मामलों:

f[1]को f[12]:

यहाँ छवि विवरण दर्ज करें

यहाँ, A0 द्वारा दिया गया है f[1], लेकिन यह अनुक्रमण आवश्यक नहीं है।

जीत मापदंड:

बाइट्स में सबसे छोटा कोड जीतता है।


1
इसे विभाजित करने वाली क्षैतिज रेखा के साथ नहीं f[2]होना चाहिए A0? यानी, f[2]वास्तव में परीक्षण के मामले में नहीं है f[3]?
जुंगह्वान मिन

अब समायोजित @JungHwanMin
मार्टिन

जवाबों:


2

बीबीसी बेसिक 49 ASCII वर्ण

टोकनाइज़ किए गए फ़ाइल 44 बाइट्स

I.n:F.i=0TOn:RECTANGLE0,0,1189>>i/2+.5,841>>i/2N.

पहले की तुलना में बहुत कम! मैं हमेशा के लिए बीबीसी बेसिक में विंडोज़ के लिए बिटशिफ्ट ऑपरेटरों के बारे में भूल जाता हूं क्योंकि वे दिन में मेरे पुराने कंप्यूटर पर उपलब्ध नहीं थे।

बीबीसी बेसिक 63 ASCII वर्ण

५en बाइट्स वाली टोकनाइज्ड फाइलें

Http://www.bbcbasic.co.uk/bbcwin/download.html पर डाउलोड इंटरप्रेटर

A%=841C%=1189d=4I.n:F.i=0TOn:RECTANGLE0,0,C%,A%:d!^B%/=2d=-d:N.

शून्य अनुक्रमण का उपयोग करता है, जो मुझे पसंद है। इस प्रकार 0 पेपर A0 के लिए आउटपुट करता है, 1 आउटपुट A0 A1 के जोड़े में विभाजित होता है, आदि।

एक्स और वाई निर्देशांक को आधा करने के बीच वैकल्पिक करना आवश्यक है, लेकिन एक सरणी में ऐसा करने से बहुत सारे बाइट्स खर्च होंगे। इसके बजाय मैं इस तथ्य का उपयोग करता हूं कि बीबीसी बेसिक A%..Z%में सन्निहित स्मृति में संग्रहीत प्रत्येक 4 बाइट्स के स्थिर पूर्णांक चर हैं। मैं में एक्स और वाई मान संग्रहीत A%और C%सूचक का उपयोग करने और पहुँच %Bघ का मूल्य है, जो बीच alternates द्वारा संशोधित 4और -4

Ungolfed

  A%=841
  C%=1189
  d=4
  INPUTn
  FORi=0TOn
    RECTANGLE0,0,C%,A%
    d!^B%/=2
    d=-d
  NEXT

उत्पादन

यहाँ छवि विवरण दर्ज करें



2

मैथेमेटिका, 87 85 बाइट्स

थैंक्स @ स्मार्टिन 1 बाइट के लिए।

Graphics@{EdgeForm@Thin,White,Rectangle[#,0{,}]&/@NestList[Sort[#/a]&,{1,a=√2},#]}&

बहुत अच्छा! EdgeForm@Thin: -1 बाइट
मार्टिन

2

जावास्क्रिप्ट (ईएस 6) / एसवीजी (एचटीएमएल 5), 170 बाइट्स

a=prompt();document.write('<svg width=297 height=210>');for(w=297,h=210;a--;h>w?h/=2:w/=2)document.write(`<rect fill=none stroke=#000 x=0 y=0 width=${w} height=${h} />`);

1-आधारित अनुक्रमण का उपयोग करता है।

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