দ্য গ্রেট, হোয়াইট, উত্তর!


11

অঁ্যা!

আপনি জানেন, কানাডিয়ানদের আমাদের সমস্যাটি হ'ল কখনও কখনও, দীর্ঘ দিন হাঁসের শিকার এবং বাঁধ মেরামত করার পরে, আমরা আমাদের কেবিনগুলিতে ফিরে যাওয়ার পথটি ভুলে যাই! আমাদের হাতের ল্যাপটপটি (যা সর্বদা আমাদের পাশে থাকে), আমাদের বাড়ির দিকে ইঙ্গিত করার কিছু উপায় রাখলে কী দুর্দান্ত হত না? বেশ, এটি অনেক আগে থেকেই বলা হয়েছে যে আপনি যদি আপনার কম্পিউটারে একটি কম্পাস প্রদর্শন করেন তবে উত্তর দিকে ইঙ্গিত করা সবচেয়ে উজ্জ্বল হবে। আমি এটি পরীক্ষা করে দেখতে চাই, তবে আমার পরবর্তী ভ্রমণে আমার সাথে নিয়ে যাওয়ার জন্য আমার একটি কমপ্যাক্ট প্রোগ্রামের প্রয়োজন, কারণ আমার হার্ড ড্রাইভটি ইতিমধ্যে ম্যাপাল সিরাপের রেসিপিগুলিতে ভরাট হয়েছে (এবং সেগুলি যেতে পারে না)। সুতরাং, আপনার কাজটি আমাকে এমন একটি প্রোগ্রাম ডিজাইন করা যা চালানো হয়, যখন নিম্নলিখিত কম্পাসের গোলাপের চিত্রটি সংরক্ষণ করে বা প্রদর্শন করে:

কম্পাস গোলাপ

বর্ণগুলি অন্য ফন্টে থাকতে পারে। মনে রাখবেন, সর্বনিম্ন সেরা, তাই সর্বনিম্ন বাইট গণনা জয়!

বিশেষ উল্লেখ

রং

  • হালকা বেগুনি: # 9999FF
  • ধূসর: # E5E5E5

দৈর্ঘ্য এবং কোণ

গোলাপ স্পেসিফিকেশন

  • কোণ a= 45 °
  • কোণ b= 90 °
  • দৈর্ঘ্য c= 250 ইউনিট
  • দৈর্ঘ্য d= 200 ইউনিট
  • দৈর্ঘ্য e= 40 ইউনিট
  • দৈর্ঘ্য f= 45 ইউনিট

ব্যাখ্যা

  • পাঠ্যটি যে কোনও উপযুক্ত ফন্টে থাকতে পারে , যেখানে উপযুক্তটি বোঝায় যে এটি গড়, শিক্ষিত মানুষের কাছে পাঠযোগ্য।
  • পাঠ্যটি অবশ্যই তার নিকটতম স্থানে স্পাইকগুলি থেকে 3 ইউনিট দূরে থাকতে হবে, গোলাপটি স্পর্শ করবে না এবং অবশ্যই খাড়া হতে হবে
  • গোলাপের কেন্দ্র থেকে যদি স্পাইকের শেষ বিন্দু এবং এর বাইরে কোনও রেখা আঁকানো থাকে তবে এটি পাঠকের কেন্দ্রের মধ্য দিয়ে +/- 2 ইউনিটের যথাযথ অংশ দিয়ে অতিক্রম করতে হবে (পাঠটি অবশ্যই অক্ষের সাথে কেন্দ্রে হওয়া উচিত a, যেখানে aপৃষ্ঠার মাঝামাঝি থেকে, স্পাইকের শেষে এবং তার বাইরেও প্রসারিত হবে)
  • প্রতিটি অক্ষর কমপক্ষে 15 ইউনিট হতে হবে 15 টি ইউনিট এবং তার একটি x / y বা y / x অনুপাত 2: 1 এর বেশি হবে না (কোনও প্রসারিত - পঠনযোগ্যতা নেই)
  • রেফারেন্স ইমেজের মধ্যবর্তী নিকটতম দীর্ঘতর স্পাইক এবং পাঠ্যের মধ্য দিয়ে অবিচ্ছিন্ন বৃত্তটি আঁকতে হবে না।
  • চিত্রটি অবশ্যই বর্গক্ষেত্র এবং কমপক্ষে 400px বাই 400px হওয়া উচিত
  • উত্সের মধ্যে একটি সংকুচিত চিত্র অনুমোদিত নয়
  • একটি ইউনিট কমপক্ষে 1 পিক্সেল হতে হবে

আপনি যখন "ম্যাপেল সিরাপের রেসিপি" বলছেন, তখন কি আপনার অর্থ ম্যাপল সিরাপ তৈরির রেসিপি বা ম্যাপাল সিরাপ থেকে স্টাফ তৈরির রেসিপিগুলি? কারণ আমি ভাবতে পারি না যে তারা প্রাক্তন হয়ে উঠবে ...
জো জেড।

@JoeZ। উভয়ই, স্পষ্টতই ... (;
গ্লোবাই

উত্তর:


7

এইচটিএমএল + সিএসএস, 487 + 189 = 676

কম্পাস গোলাপটি সিএসএস বর্ডার থেকে ত্রিভুজ কৌশল এবং কিছু বেসিক ট্রান্সফর্মেশন ব্যবহার করে তৈরি করা হয়েছিল । চিঠিগুলি কেবলমাত্র নির্দিষ্ট অবস্থান দেওয়া হয়, যাতে এটি বেশ দীর্ঘ হয়: /

নীচের স্নিপেটটি ছোট করে দেওয়া হয়েছে যাতে এটি সমস্ত মানানসই হয়। আপনি এখানে জেএসফিডেল চেক আউট করতে পারেন । এছাড়াও, আমি নিশ্চিত নই যে অক্ষরগুলি বিভিন্ন ব্রাউজারগুলিতে (বিভিন্ন ফন্ট, ডিফল্ট স্টাইল ইত্যাদির সাথে) কত ভাল লাগবে।

html{transform:scale(0.2)}body{margin:5em}hr{margin:0;float:left;border:250px solid transparent;border-right:58px solid #E5E5E5;border-bottom:58px solid #9999FF}a{position:fixed;width:616px;font-size:4em}#a{transform:rotate(90deg)}#b{transform:rotate(270deg)}#c{transform:rotate(180deg)}#d{transform:rotate(45deg)scale(.8)}#n{top:20px;left:365px}#e{top:356px;left:700px}#s{top:700px;left:370px}#w{top:356px;left:10px}#N{top:150px;left:550px}#E{top:560px;left:550px}#S{top:560px;left:140px}#W{top:150px;left:140px}
<a id=n>N</a><a id=e>E</a><a id=s>S</a><a id=w>W</a><a id=N>NE</a><a id=E>SE</a><a id=S>SW</a><a id=W>NW</a><a id=d><hr><hr id=a><hr id=b><hr id=c></a><a><hr><hr id=a><hr id=b><hr id=c></a>


মনে হচ্ছে মাঝের চারপাশে একটি ছোট ধূসর বাক্স রয়েছে, যা কম্পাসটি ব্যবহারযোগ্য নয়। আপনি যে এটি ঠিক করতে পারে কোন সুযোগ আছে?
globby

1
@ globby এটি আমার জন্য দেখায় না। আপনি একটি স্ক্রিনশট পোস্ট করতে পারেন?
grc

imgur.com/dYQoLcM,sSrR94O মোজিলা ফায়ারফক্স 35,0 ব্যবহার উইন্ডোজ 8.1 উপর
globby

@globby যা কেবল স্কেলিংয়ের একটি প্রভাব হতে পারে। এটি কি পুরো আকারের জেএসফিডেলে ঘটে?
grc

3

প্রক্রিয়া 2 - 636

একটি দ্রুত সমাধান যা কেবলমাত্র প্রক্রিয়াজাতকরণ ত্রিভুজ পদ্ধতিটি ব্যবহার করে সমস্ত ত্রিভুজ আঁকে এবং তারপরে অক্ষরগুলি তাদের টিপসে রাখে।

int s,h,m,b,n,t;void setup(){s=400;h=s/2;b=125;t=71;n=32;m=28;size(s,s);noStroke();fill(229);t(h-t,h-t,h-m,h);t(h-t,h+t,h,h+m);t(h+t,h-t,h,h-m);t(h+t,h+t,h+m,h);fill(#9999FF);t(h-t,h-t,h,h-m);t(h-t,h+t,h-m,h);t(h+t,h-t,h+m,h);t(h+t,h+t,h,h+m);t(h-b,h,h-n,h-n);t(h+b,h,h+n,h+n);t(h,h-b,h+n,h-n);t(h,h+b,h-n,h+n);fill(229);t(h-b,h,h-n,h+n);t(h+b,h,h+n,h-n);t(h,h-b,h-n,h-n);t(h,h+b,h+n,h+n);fill(color(0));text("NW",h-t-14,h-t-2);text("NE",h+t+2,h-t-2);text("SW",h-t-14,h+t+10);text("SE",h+t,h+t+10);text("N",h-5,h-b-5);text("S",h-5,h+b+12);text("E",h+b+2,h+5);text("W",h-b-14,h+5);}void t(int a,int b,int c,int d){triangle(h,h,a,b,c,d);}

এখানে চিত্র বর্ণনা লিখুন

আপনি এখানে প্রক্রিয়াজাতকরণ পেতে পারেন


3

পিএইচপি, 628 বাইট

সুবিধার জন্য কয়েকটি লাইনব্রেক যুক্ত করেছে।

$c=$z.create;$h=$c($w=250,$w);$i=$c(530,533);$a=$z.colorallocate;$a($h,$f=255,$f,$f);$a($i,$f,$f,$f);$a($h,229,229,229);$a($h,153,153,$f);
$p=$z.filledpolygon;$p($h,$o=[0,64,0,0,141,141,],3,2);$p($h,[64,0]+$o,3,1);$p($h,$o=[0,$w,0,0,57,57],3,1);$p($h,[$w,0]+$o,3,2);
$c=$z.copy;$r=$z.rotate;$c($i,$h,263,267,0,0,$w,$w);$c($i,$r($h,90,0),263,17,0,0,$w,$w);$c($i,$r($h,180,0),13,17,0,0,$w,$w);$c($i,$r($h,270,0),13,267,0,0,$w,$w);
$s=$z.string;$s($i,5,259,0,N,3);$s($i,5,259,518,S,3);$s($i,5,0,259,W,3);$s($i,5,518,259,E,3);$s($i,5,106,108,NW,3);$s($i,5,406,108,NE,3);$s($i,5,406,410,SE,3);$s($i,5,106,410,SW,3);
imagepng($i,"n.png");

সাথে চালাও -rn.pngছবিটি দিয়ে একটি ফাইল তৈরি করে ; ইউনিট 2 পিক্সেল।

আমাকে অবশ্যই স্বীকার করতে হবে যে আমি পরীক্ষার মাধ্যমে এবং ত্রুটির দ্বারা বাতাসের জন্য সমন্বয়গুলি খুঁজে পেয়েছি এবং সেগুলি সম্ভবত কিছুটা দূরে রয়েছে। শীঘ্রই গণনা করা হবে; তবে আমি প্রতিশ্রুতি দিচ্ছি: তারা বাইট গণনা পরিবর্তন করবে না।
এখন আমার ত্রিভোজনমিতি খনন এবং এর সাথে লড়াই করার জন্য আমার মজা ছিল imagecopy... কি বিভ্রান্তি !

অন ​​গল্ফিং: অনেক কৌশল নয়; তবে এই কয়েকজন অনেক বেশি সাশ্রয় করেছেন:

  • ভেরিয়েবলগুলিতে ফাংশন নাম এবং দুটি মান নির্ধারণের ফলে সম্ভবত সবচেয়ে বেশি প্রভাব পড়ে।
    আমি ফাংশনটির নামগুলি প্রতিস্থাপন করার আগেও গণনা করতে পারি নি।
  • অ্যারে +অপারেটরের সাথে ম্যাজিকটি 42 বাইট দিয়েছে।
  • চিত্রটি ব্রাউজারে না পাঠানোর পরিবর্তে একটি ফাইল লিখে 27 বাইট সংরক্ষণ করা হয়েছে।
  • ভেরিয়েবলের প্রথম ব্যবহারে অ্যাসাইনমেন্ট সরিয়ে নেওয়া আরও কয়েকটি আরও দেয়।

পিএইচপি নর্থ স্টার

ভাঙ্গন

// create images and allocate colors
$c=imagecreate;
$h=$c($w=250,$w);   // helper image - just as large as needed or imagecopy will screw up 
$i=$c(530,533);     // main image

$a=imagecolorallocate;
$a($h,$f=255,$f,$f);    // white is 0
$a($i,$f,$f,$f);    // must be assigned to both images
$a($h,229,229,229); // grey is 1
$a($h,153,153,$f);  // purple is 2

// draw the south-east quadrant
$p=imagefilledpolygon;
// small triangle purple first
$p($h,$o=[
// point 3: 0.8*e *2
    0,64,
// point 1: center
    0,0,
// point 2: a=45 degrees, d=200 units
    141,141,// d/sqrt(2)=141.421356
],3,2);
// small triangle grey
$p($h,[64,0]+$o,3,1);

// large triangles
$p($h,$o=[
    0,$w,
    0,0,
    57,57   // e*sqrt(2)=56.5685424949
],3,1);

$p($h,[$w,0]+$o,3,2);

// create rose
$c=imagecopy;
$r=imagerotate;
$c($i,$h,263,267,0,0,$w,$w);            // copy quadrant to main image (SE)
$c($i,$r($h,90,0),263,17,0,0,$w,$w);    // rotate quadrant and copy again (NE)
$c($i,$r($h,180,0),13,17,0,0,$w,$w);    // rotate and copy again (NW)
$c($i,$r($h,270,0),13,267,0,0,$w,$w);// rotate and copy a last time (SW)

// add circle
#imageellipse($i,263,267,500,500,2);    // grey is now 2: imagecopy shuffled colors

// add names
$s=imagestring;
$s($i,5,259,  0,N,3);   // 5 is actually the largest internal font PHP provides
$s($i,5,259,518,S,3);   // unassigned colors are black
$s($i,5,  0,259,W,3);
$s($i,5,518,259,E,3);

$s($i,5,106,108,NW,3);
$s($i,5,406,108,NE,3);
$s($i,5,406,410,SE,3);
$s($i,5,106,410,SW,3);

// output
#header("Content-Type:image/png");
#imagepng($i);
imagepng($i,"n.png");

1

আর, 877 850 813

লোটের গল্ফের জন্য এটি আমার সন্দেহ, তবে আমি নিয়মগুলি মেনে চলতে পেরেছি কিনা তা দেখতে আমি কিছু পেতে চাই।

সম্পাদনা করুন: বহুভুজ তৈরির চারপাশে কয়েকটি পরিষ্কার হারিয়েছেন, কয়েকটি সরানোর রূপরেখা অর্জন করেছেন

a=45;b=90;c=125;e=40;h=c(0,0,b,a,a,0,a,b)*pi/180;i=c(0,c,c,100,e,a,(2*a^2)^.5,a);x=i*sin(h);y=i*cos(h);q=x[6:7];r=x[7:8];s=x[2:3];t=x[c(5,5)];u=y[6:7];v=y[7:8];w=y[2:3];z=y[c(5,5)];m=(s-t);n=(w-z);o=(q-r);p=(u-v);i=((q*v-u*r)*m-o*(s*z-w*t))/(o*n-p*m);x=c(x,i)[c(1,2,5,1,3,5,5,4,10,5,4,9)];y=c(y,rev(i))[c(1,2,5,1,3,5,5,4,10,5,4,9)];png("1.png",400,400);par(mar=rep(0,4));a=c(-200:200);plot(a,a,type="n");for(b in 0:3){for(i in(0:3)*3+1){a=c(1,1,1,-1,-1,-1,-1,1);polygon(x[(i):(i+3)]*a[b*2+1],y[(i):(i+3)]*a[b*2+2],border=NA,col=c("#9999FF","#E5E5E5")[(i%%6%/%4+b%%2)%%2+1]);}};for(i in 1:4){a=c("N","NE","E","SE","S","SW","W","NW");b=a[i*2-1];c=a[i*2];o=c(1,1,-1,-1,1);n=o[i+1];m=o[i];e=c(5,2)[i%%2+1];text((x[e]+(11*abs(i%%2-1)))*m,(y[e]+(12*i%%2))*n,b,cex=1.8);text((x[8]+10)*m,(y[8]+12)*n,c,cex=1.8)};dev.off()

এটি নিম্নলিখিত পিএনজি চিত্র উত্পাদন করে

এখানে চিত্র বর্ণনা লিখুন

আমি কী করছি তার একটা ব্যাখ্যা bit

a=45;
b=90;
c=125;
e=40;
h=c(0,0,b,a,a,0,a,b)*pi/180;            # angles to known vertices in one quadrant
i=c(0,c,c,100,e,a,(2*a^2)^.5,a);        # distances to known vertices
x=i*sin(h);                             # calculate x ordinates
y=i*cos(h);                             # calculate y ordinates
q=x[6:7];                               #-----------------------
r=x[7:8];                               #
s=x[2:3];                               # Get the lines required 
t=x[c(5,5)];                            # to determine the vertex
u=y[6:7];                               # for the minor pointers
v=y[7:8];                               #
w=y[2:3];                               # 
z=y[c(5,5)];                            #------------------------ 
m=(s-t);                                # Intersect them
n=(w-z);                                # to give coordinate.
o=(q-r);                                # Just calculate the x's
p=(u-v);                                # as they can be reversed
i=((q*v-u*r)*m-o*(s*z-w*t))/(o*n-p*m);  #------------------------
x=c(x,i)[c(1,2,5,1,3,5,5,4,10,5,4,9)];      # X Triangle groups
y=c(y,rev(i))[c(1,2,5,1,3,5,5,4,10,5,4,9)]; # Y Triangle groups
png("1.png",400,400);                   # Set output to png
par(mar=rep(0,4));                      # Make margins 0
a=c(-200:200);
plot(a,a,type="n");                     # Start plot
for(b in 0:3){for(i in(0:3)*3+1){       # draw polygons, alternating colors and drawing all quadrants
a=c(1,1,1,-1,-1,-1,-1,1);
polygon(x[(i):(i+3)]*a[b*2+1],y[(i):(i+3)]*a[b*2+2],border=NA,col=c("#9999FF","#E5E5E5")[(i%%6%/%4+b%%2)%%2+1]);
}};
for(i in 1:4){                          # Add text to compass points for each quadrant
a=c("N","NE","E","SE","S","SW","W","NW");b=a[i*2-1];c=a[i*2];
o=c(1,1,-1,-1,1);n=o[i+1];m=o[i];
e=c(5,2)[i%%2+1];
text((x[e]+(11*abs(i%%2-1)))*m,(y[e]+(12*i%%2))*n,b,cex=1.8);
text((x[8]+10)*m,(y[8]+12)*n,c,cex=1.8)
};
dev.off()                               # Close PNG

1

গণিত, 347 বাইট

p=q={{0,0},{0,125},40{1/Sqrt[2],1/Sqrt[2]}};q[[3,1]]*=-1;m=5p[[3]]/2;s=u={{0,0},m,{32,0}};u[[3]]={0,32};r={{0,1},{-1,0}};t=Polygon[#]&;z=MatrixPower[r,#]&;a[v_]:=Table[t[z[n].#&/@v],{n,4}];i=Table[Text[#[[j]],z[j].#2],{j,4}]&;G=RGBColor["#E5E5E5"];Graphics[{i[{E,S,W,N},{0,130}],i[{NE,SE,SW,NW},1.06m],G,a[u],RGBColor["#9999FF"],a[s],a[p],G,a[q]}]

Pregolfed:

p = q = {{0, 0}, {0, 125}, 40 {1/Sqrt[2], 1/Sqrt[2]}}; (*defining points*)
q[[3, 1]] *= -1;                                       (*for triangles*)
m = 5 p[[3]]/2;
s = u = {{0, 0}, m, {32, 0}};
u[[3]] = {0, 32};
r = {{0, 1}, {-1, 0}};                                 (*-pi/2 rotation matrix*)

t = Polygon[#] &;
z = MatrixPower[r, #] &;
a[v_] := Table[t[z[n].# & /@ v], {n, 4}];              (*rotate the sets of points*)
                                                       (*four times*)

i = Table[Text[#[[j]], z[j].#2], {j, 4}] &;
G = RGBColor["#E5E5E5"];                               (*need to use this twice*)
                                                       (*so triangles overlap*)
                                                       (*properly so define a variable*)

Graphics[{i[{E, S, W, N}, {0, 130}], 
  i[{NE, SE, SW, NW}, 1.06 m], G, a[u], RGBColor["#9999FF"], a[s], 
  a[p], G, a[q]}]

Nএবং E(প্রাকৃতিক লগের ভিত্তি) উভয়ই ম্যাথমেটিকায় অন্তর্নির্মিত তবে পাঠ্যের হিসাবে ই চিত্রের মধ্যে একটি ছোট হাতের ফন্টে স্টাইলাইজড হয়ে যায় তবে সমস্যাটি খুব একটা বলে না যে আমরা কেবল সমস্ত পাঠ্যের জন্য একটি ফন্ট ব্যবহার করতে পারি। যদি এটি প্রয়োজন তাহলে প্রতিস্থাপন Eসঙ্গে "E"এবং আমি দুই বাইট লাভ করে।

Sqrt[2]ম্যাথামেটিকায় দুটি অক্ষরে স্টাইলাইজ করা যায়, সুতরাং যদি আমরা প্রত্যেকে Sqrt[2]দুটি চরিত্র হিসাবে গণনা করি তবে আমার নতুন বাইট গণনাটি 349 এর পরিবর্তে 339।

নীচে চিত্র উত্পাদিত হয়।

কম্পাস

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