交差した正方形の作成


23

交差した正方形の作成

1つ以上の整数を入力し、選択した任意の印刷可能文字で作られた正方形を出力し、中央を斜めにクロスします。

一般的な考え方は、出力が対角線のクロスを持つ中空の正方形になることです。

Input: 7
Output:
*******
*#   #*
* # # *
*  #  *
* # # *
*#   #*
*******

上記の例では、「*」は外側のボックスを表し、「#」は斜めの十字を表します。

上記の例では2つの異なる文字を使用しているため、出力がどのように見えるかがわかりやすくなります。プログラムでは1文字のみを使用する必要があります。

入力

1以上の整数で、奇数であることが保証されています。

出力

選択したキャラクターで構成され、中央に十字がある正方形。

  • 十字は対角線でなければなりません
  • 正方形は、関数を介して出力するか、outputに書き込むことができます
  • 末尾の改行は問題ありません
  • 必要に応じて、グラフィック、図、または画像として出力できます

Input: 1
Output:
*

Input: 3
Output:
***
***
***

Input: 5
Output:
*****
** **
* * *
** **
*****

Input: 7
Output:
*******
**   **
* * * *
*  *  *
* * * *
**   **
*******

スペック

  • 機能または完全なプログラムが許可されています
  • 好みの方法で入力を取得できます
  • 標準的な抜け穴は許可されていません
  • プログラムは、つまりは、追加書類なしで動作しなければならないusingでねC#、彼らはエントリに含まれなければなりません
  • 関数から出力するか、結果を印刷できます

これはコードゴルフであるため、最短のソリューションが優先されます。


1
これらの出力にインデックスを付けることもでき0,1,2,3,...ますか?
-flawr

@flawr私はあなたが何を意味するのか100%確信していません
-TheLethalCoder

@TheLethalCoder彼はn、入力を取り、サイズの正方形を印刷できるかどうかを尋ねます2n+1
マーティンエンダー

@MartinEnderああ、私の例では入力1が与える*が、彼にとっては入力0になるのだろうか?
TheLethalCoder

1
@TheLethalCoderはい、入力1するとの例が得られます3
マーティンエンダー

回答:


9

MATL20 19 17バイト

2-:XdtP!+~TTYa1YG

MATLオンラインで実験的に試すことができます。ページが機能しない場合は、ページを更新する必要がある場合があります。

サンプル実行:

enter image description here

ASCIIバージョン:19バイト

2-:XdtP!+~TTYa~42*c

オンラインでお試しください!


しかし、少なくとも線が平行で長方形であることを確認してください。:D
フレイ

@flawr Hm?どういう意味ですか?
ルイスメンドー

少なくとも正方形の辺が斜めになっているように見えますが、それは単なる幻想です。またはそれは?(画面の後ろにブラックホールがあり、時空が歪んでいる可能性があります。)
歪んでいる可能性があり flawr

@flawrまたは眼科医に行くかもしれません:-P
ルイスメンドー

MATLオンライン、バージョン19.0.0では機能しません。
うーん

16

VBA Excel、168バイト

命令:

VBAの助けを借りたExcelは、この課題に効果的で十分なツールであると思います。次のようにExcelのワークシートを設定します

enter image description here

はい、ワークシートのセルをピクセルとして使用することで、昔のような小さくて古典的な正方形のピクセルを使用します。ははは...

ここでは、セルA1を入力として使用し、フォントの色を赤に変更します。なぜ赤?赤は3文字の色なので、ゴルフに適しています。イミディエイトウィンドウで次のコードを記述して実行します。

N=[A1]:Range("A1",Cells(N,N)).Interior.Color=vbRed:Range("B2",Cells(N-1,N-1)).Clear:For i=1To N:Cells(i,i).Interior.Color=vbRed:Cells(i,N+1-i).Interior.Color=vbRed:Next

コードのゴルフを解きました:

Sub A()
    N = [A1]
    Range("A1", Cells(N, N)).Interior.Color = vbRed
    Range("B2", Cells(N - 1, N - 1)).Clear

    For i = 1 To N
        Cells(i, i).Interior.Color = vbRed
        Cells(i, N + 1 - i).Interior.Color = vbRed
    Next
End Sub

段階的な説明:

N = [A1]: Range("A1", Cells(N, N)).Interior.Color = vbRed

enter image description here

Range("B2", Cells(N - 1, N - 1)).Clear

enter image description here

範囲セルの対角線をループする: Cells(i, i).Interior.Color = vbRed

enter image description here

最終ステップと出力: Cells(i, N + 1 - i).Interior.Color = vbRed

enter image description here


Cells.RowHeight=48:set r=[A1]:r.Resize(r,r).Interior.Color=0:[B2].Resize(r-2,r-2).Clear:For i=1To[A1]:set r=Union(r,Cells(i,i),Cells(i,r-i+1)):Next:r.Interior.Color=0
テイラースコット

8

JavaScript(ES6)、96バイト

f=
n=>[...Array(n--)].map((_,i,a)=>a.map((_,j)=>i&&j&&n-i&&n-j&&i-j&&n-i-j?' ':'*').join``).join`
`
;
<input type=number min=1 step=2 oninput=  o.textContent=f(this.value)><pre id=o>


7

Python 2、65バイト

i=n=2**input()/2
while i:print bin((n>i>1or~-n)|n|i|n/i)[2:];i/=2

次のような2進数を出力するというJonathan Allanのアイデアを使用します。

11111
11011
10101
11011
11111

行はビット演算で作成され、バイナリで表示されます。各パートは、残りの部分に統合されます。パーツは、2の累乗n(固定)とi(落下)によって生成されます

  1. 左側 1
  2. 右側 n
  3. 対角線in/i
  4. 上部と下部によりますか。n-1i==1i==n

実際、(1)と(4)は1、when 1<i<nなどを生成することによって結合されn-1ます。


7

Python、114 110 96 90バイト

完全に変更されました:

lambda n:[bin(sum(2**p for p in[range(n),{0,n-1,r,n-1-r}][0<r<n-1]))[2:]for r in range(n)]

1およびを使用して、文字列、文字のリストを返します0
TheBikingVikingのおかげで-6バイト

ideoneでテストする


以前のPython 2 @ 110

def f(n):g=range(n);n-=1;print'\n'.join(''.join((c in(r,n-r,0,n)or r in(0,n))and'#'or' 'for c in g)for r in g)

イデオンでテストする


ラムダに変換してand-or式を再構築することにより、6バイトを節約しますlambda n:[bin(sum(2**p for p in[range(n),{0,n-1,r,n-1-r}][0<r<n-1]))[2:]for r in range(n)]
TheBikingViking

@TheBikingVikingああ、あなたは正しいです-アイデアをそこに置いて寝る前に、私は本当に少し手を振って(元の意図)ゴルフをするべきでした:p。
ジョナサンアラン

7

Java 7、131 130 128 125 124 122バイト

String c(int n){String r="";for(int i=n,j;n-->0;r+="\n")for(j=0;j<n;r+=i*j<1|n-i<2|n-j<2|i==j|i==n-++j?"*":" ");return r;}

@LeakyNunのおかげで3バイト節約されました。@OliverGrégoireの
おかげで、与えられた幅のチャレンジで#の中空の正方形を描くための私の回答で 1バイト節約されました。@cliffrootの おかげで2バイト節約

未ゴルフ&テストコード:

ここで試してみてください。

class M{
  static String c(int n){
    String r = "";
    for(int i = n, j; n-- > 0; r += "\n"){
      for(j = 0; j < n;
            r += i < 1      // Responsible for the first horizontal line
               | j < 1      // Responsible for the first vertical line
               | n-i < 2    // Responsible for the last horizontal line
               | n-j < 2    // Responsible for the last vertical line
               | i == j     // Responsible for the top-left to bottom-right diagonal line
               | i == n-++j // Responsible for the top-right to bottom-left diagonal line (and increasing j)
             ? "*"
             : " ");
    }
    return r;
  }

  public static void main(String[] a){
    System.out.println(c(1));
    System.out.println(c(3));
    System.out.println(c(5));
    System.out.println(c(7));
  }
}

出力:

*

***
***
***

*****
** **
* * *
** **
*****

*******
**   **
* * * *
*  *  *
* * * *
**   **
*******

1
String c(int n){String r="";for(int i=-1,j;++i<n;r+="\n")for(j=0;j<n;r+=i<1|j<1|n-i<2|n-j<2|i==j|i==n-++j?"*":" ")return r;}4バイトの保存
リーキー修道女

@LeakyNun 3実際に。;内側のforループの背後にはまだ必要です。
ケビンCruijssen 16

1
最初に、私はそれがi-->0むしろあるべきだと信じており 、2バイトの代わりにn-->0使用することもできますi*j<1i<1|j<1
-cliffroot

@cliffrootもちろん、何かを見つけなければなりませんでした。へへ、jk、ありがとう!;)別の答えで前にそのようなことをしたことがあるのを覚えているので、ここでそれをするのを忘れてしまったのはかなり悪い..:S
Kevin Cruijssen

6

Matlab、68 66 64 58バイト

グラフィカル出力も許可されているため:

k=input('');[x,y]=ndgrid(abs(-k:k));spy(~(max(x,y)<k&x-y))

どの出力か

enter image description here

ASCIIのみのバージョンは次のとおりです。

これはインデックスを使用しています 0,1,2,3,...

k=input('');[x,y]=ndgrid(abs(-k:k));[(max(x,y)==k|~(x-y))*42,'']

別の方法として、インデックス付け1,3,7,...

n=input('');k=1:n;m=eye(n);m([k,end-k+1])=1;[(m|flip(m'))*42,'']

いいですね、グラフィカルな出力は見た目が良いだけでなく、バ​​イトの面でも短くなっているのはクールです。通常、プレーンASCIIの代わりに何かをグラフィカルにすると、バイト数が増加するだけです(通常は大幅に増加します)。
ケビンCruijssen 16

6

C#、112101バイト

TheLethalCoderに、C#ではこれらの匿名のラムダステートメントと正規表現が許可されていることを思い出させてくれてありがとう。

n=>{var r="";for(int y=n--,x;y-->0;r+="*\n")for(x=0;x<n;r+=y%n*x<1|y==x|y==n-x++?"*":" ");return r;};

C#は楽しいゴルフ言語ではないと言ったのは誰ですか?


私は当然知っている?27591バイト:p
ジョナサンアラン

5

ロゴ、155バイト

関数として実装されたグラフィカルソリューション

Alphabet Triangleの答えを作り直し、角度を少し変えました。前と同じように、r文字のラインを描画します。今回は、このb関数は、1つの直線エッジと1つの対角線を回転させて4回繰り返すことにより、ボックスを描画します。これにより、対角線が2回(互いの上に)描画されますが、個別に処理するよりもコードが少なくなりました。この答えは、偶数も適切に処理します。の入力に特別な処理を追加する必要がありました1進むのを防ぐました。

b引数としてサイズをとる関数として実装しました:

pu
to r:n:b:l repeat:n[rt:b label "A lt:b if repcount>1[fd:l]] end
to b:s
repeat 4[rt 90
r:s 90-heading 20 rt 135
r:s 90-heading 20*sqrt 2 rt 45]
end

試してみてください Calormen.comのロゴインタープリターで。呼び出すには、行を追加bして、次の形式で呼び出します。

b 7

Sample of size 7

...または、サンプラープラッタを試してみてください。サンプラーは、サイズ5、7、9、および11の4つのサンプルを描画します。

repeat 4[
  b repcount*2+3
  rt 90
]

Sample of multiple sizes


4

R、102バイト

    n=scan();for(i in 1:n){for(j in 1:n){z=" ";if(i%in%c(1,n,n-j+1)|j%in%c(1,i,n))z="*";cat(z)};cat("\n")}

i == 1 | j == 1 | ...よりも%in%を使用して条件を表現する方が効率的であることに注意してください。


入力が複数であることが保証されている場合、1人のキャラクターをゴルフで遠ざけることができます n=scan();for(i in n:1){for(j in n:2){z=" ";if(i%in%c(1,n,n-j+1)|j%in%c(i,n))z="*";cat(z)};cat("*\n")}
。– JDL


4

ハスケル、102の 100 96 91 87バイト

c s=unlines.f$f.(#)where f=(<$>[1..s]);x#y|elem y[1,s,x]||elem x[1,s,s-y+1]='*'|1>0=' '
  • flawrのおかげで2バイト節約されました
  • リスト内包表記を使用して、さらに4バイトを節約しました。
  • flawrの改善と組み合わせて5バイト節約any
  • に置き換えることanyで4バイト節約elem

ゴルフされていないバージョン:

cross :: Int -> String
cross s = unlines $ map line [1..s]
    where line y = map (pos y) [1..s]
          pos y x | x == y = '*'
                  | x == s - y + 1 = '*'
                  | y `elem` [1, s] = '*'
                  | x `elem` [1, s] = '*'
                  | otherwise = ' '

これはまだ改善できると確信していますが、これは今のところ思いついたものです。

古いバージョン:

c s=unlines.f$f.(#)where f=(<$>[1..s]);x#y|any(==y)[1,s,x]||any(==x)[1,s,s-y+1]='*'|1>0=' '

2
あなたは[1..s]2回使用しています、私はあなたがそれを定義できると思いますwhere
flawr

whereキーワードの前に余分なスペースを追加する必要があるため、102バイトにもなります。 c s=unlines$(\m->(m#)<$>z)<$>z where z=[1..s];m#n|or((==)<$>[n,m]<*>[1,s])||n==m||n==s-m+1='*'|1>0=' '
-sudee

1
ああ<$>[1..s]、でも関数に詰め込めますよね?のようなc s=unlines$f(\m->f(m#))where m#n|or((==)<$>[n,m]<*>[1,s])||n==m||n==s-m+1='*'|1>0=' ';f=(<$>[1..s])
flawr

良い点、それは確かに動作します。:)
sudee

1
PS:c s=unlines$f$f.(#)where f=(<$>[1..s]);m#n|or((==)<$>[n,m]<*>[1,s])||n==m||n==s-m+1='*'|1>0=' '
flawr

3

Java、130バイト

s->{for(int i=0;i<s;i++)for(int j=0;j<s;j++)System.out.print((s-1-i==j||i==j||i==0||j==0||i==s-1||j==s-1)?j==s-1?"*\n":"*":" ");};

テストプログラム

Consumer<Integer> consumer = s -> {
        for (int i = 0; i < s; i++) {
            for (int j = 0; j < s; j++) {
                System.out.print((s - 1 - i == j || i == j || i == 0 || j == 0 || i == s - 1 || j == s - 1) ? j == s - 1 ? "*\n" : "*" : " ");
            }
        }
    };

    consumer.accept(20);

+1!ちなみに、Java 8であると指定します。また、int jを削除してint i=0,j;代わりに使用することで、少しゴルフをすることができます。また、すべて|||ターナリチェックで置き換え、カッコを削除することもできます。また、s-14回使用するので、これを変数に入れます。また、あなたは変更することができます==0<1。したがって、合計でs->{for(int i=0,j,x=s-1;i<s;i++)for(j=0;j<s;j++)System.out.print(x-i==j|i==j|i<1|j<1|i==x|j==x?j==x?"*\n":"*":" ");}116バイト)になります。私のJava 7の答えよりもかなり短いので、素晴らしいアプローチです。
ケビンCruijssen 16

1
@KevinCruijssen私はいつも短い答えになりますが、LMAOよりも改善の余地があります。よく私の友人をゴルフした。
ショーンワイルド

へへ。xD 116バイトバージョンのbtwを使用してください。それはあなたのコードです。;)Java 7の回答(残念ながら長い)では、少し異なるアプローチを使用しています。それを116バイトバージョンに編集する場合、基本的にはあなたの答えを盗みますが、それは望みません。
ケビンCruijssen 16

ゴルフをコピーして貼り付けるだけでは意味がありません。通常、簡単なモックアップを投稿し、後で戻ってゴルフをすることができなかったかどうかを確認します。しかし、あなたはFOR MEE :(笑JKそれを台無しにした
ショーン・ワイルド

ごめんなさい 私が与えたヒントのほとんどは、実際にはJavaでのゴルフヒントにあります。私は2quick4uだと思います。;)
ケビンクルーイッセン

3

C、140 121 114バイト

クエンティンのおかげで19バイト。

ダブルネストループから1つのループに切り替えることで7バイト節約されます。

main(a){scanf("%d",&a);for(int i=0;i<a*a;i++,i%a||puts(""))putchar(i/a&&i/a^a-1&&i%a&&-~i%a&&i%-~a&&i%~-a?32:42);}

ゴルフの提案を歓迎します。


Cでプログラミングすることはありませんが、Javaのように最初のforループにintを配置することはできませんか?すなわちint i,j;for(i=0;for(int i=0,j;
ケビンCruijssen

1
私が最後にCを使用したとき、あなたもint i,j;後に置くことができませんでしたscanf
ニール

試すn+~i-jなど
ニール

GCCは#include完全に削除しても問題ありません。
クエンティン

@Neilその後、それを置くことができなかったことはどういう意味ですか?
リーキー修道女

3

PowerShell(133)

filter s($x){1..$x|%{$o="";$r=$_;1..$x|%{if($_-eq1-or$r-eq1-or$_-eq$x-or$r-eq$x-or$r-eq$_-or$r-1-eq$x-$_){$o+="*"}else{$o+="_"}};$o}}

不格好ですが、それでも十分に機能します。

s(11)
***********
**_______**
*_*_____*_*
*__*___*__*
*___*_*___*
*____*____*
*___*_*___*
*__*___*__*
*_*_____*_*
**_______**
***********

ゴルフの提案は絶対に歓迎します。PowerShellを始めてから長すぎます。


3

SILOS、212バイト

readIO 
a = i
lbla
a - 1
t = a
t + 1
t % i
t * a
b = i
lblb
b - 1
u = b
u + 1
u % i
u * b
u * t
v = a
v - b
u * v
v = a
v + b
v + 1
v % i
u * v
u |
if u c
print #
GOTO d
lblc
print .
lbld
if b b
printLine 
if a a

オンラインでお試しください!


:)この言語にもっと注意をもたらすためのおかげで
ロハンJhunjhunwala

1
@RohanJhunjhunwala私はそのプログラミングを楽しんでいます。このような素晴らしい言語を作成してくれてありがとう。
リーキー修道女

3

GNU sed、117 114 + 1(rフラグ)= 115バイト

p;/^0$/Q;/^000$/{p;q}
h;s/./ /3g;s/  $/00/
:f;/ 00 /!{G;h;s/\n.*//p;t;:}
s/^(0 *)0  ?( *)0/\1 0\20 /
tf;s/00/0/p;g

sedには数値のネイティブサポートがないため、入力はこのコンセンサスに基づいて単項で与えられます。正方形の後半は、ホールドスペースに逆順で格納された前半です。

実行:

sed -rf crossed_square.sed <<< "00000"

出力:

00000
00 00
0 0 0
00 00
00000

3

Python、89バイト

これは先祖返りでした!pythonのturtleモジュールを使用しました。

from turtle import*
n=input()
for i in[(n,n),(n,0),(0,n),(0,0),(n,0),(0,n),(n,n)]:goto(i)

n = 200の場合の結果は次のとおりです。

enter image description here


1
創造性のために+1
mbx

2

Scala、141 137バイト

val s=args(0).toInt-1;val t=0 to s;print(t.map{x=>t.map{y=>if(x==0||x==s||y==0||y==s||x==y||x==s-y)"*" else " "}.mkString+"\n"}.mkString)

実行:

$ scala cross.scala 10

技術的には、印刷物を削除して次のようなものに行くことができます

def c(n:Int)={val (s,t)=(n-1,0 to n-1);t.map{x=>t.map{y=>if(x==0||x==s||y==0||y==s||x==y||x==s-y)"*" else " "}.mkString+"\n"}.mkString}

これにより、関数の構文を数えるかどうかに応じて、135バイトまたは121バイトになります。

読み取り可能なバージョン:

def cross(n: Int) = {
   // Declares both s and t as variables with tuple expansion
   // s is the zero-based size and t is a range from 0 to s
   val (s,t) = (n-1, 0 to n-1)

   // Maps all rows by mapping the columns to a star or a space
   t.map { x =>
      t.map { y =>
        if (x == 0 || x == s || y == 0 || y == s || x == y || x == s-y) "*" 
        else " "
      }.mkString+"\n" // Concatenate the stars and spaces and add a newline
   }.mkString         // Concatenate the created strings
 }


2

Python 2、83バイト

i=n=input()
while i:l=['* '[1<i<n]]*n;i-=1;l[0]=l[~0]=l[i]=l[~i]='*';print`l`[2::5]

行の文字のリストを変更して、a *を最初、最後、i番目、i番目から最後の位置に入れます。最初と最後の行はallとして始まり*、残りはすべてスペースとして始まります。偶然にも機能します。lambda式は修正よりも、おそらく短いですが、私はこの方法が好きです。



2

Mathematica、81バイト

""<>#&/@Table[If[i^2==j^2||i^2==#^2||j^2==#^2,"*"," "],{i,-#,#},{j,-#,#}]&[(#-1)/2]&

原点を中心にした座標系を作成し、*sの行き先を計算します。行ごとに1つの文字列の配列を出力します。


2

Javascript(289 270バイト)

function s(a){b=[];for(i=0;i<a;i++)if(b.push([]),0==i||i==a-1)for(j=0;j<a;j++)b[i].push("*");else for(j=0;j<a;j++)0==j||j==a-1?b[i].push("*"):j==i||a-1-j==i?b[i].push("*"):b[i].push(" ");c="";for(i=0;i<b.length;i++){for(j=0;j<b[i].length;j++)c+=b[i][j];c+="\n"}return c}

ゴルフをしていない:

function square(size){
str=[];

for(i=0;i<size;i++){
    str.push([]);
    if(i==0||i==size-1){
        for(j=0;j<size;j++){
            str[i].push("*");
        }
    }else{
        for(j=0;j<size;j++){
            if(j==0||j==size-1){
                str[i].push("*");
            }else if(j==i||size-1-j==i){
                str[i].push("*");
            }else{
                str[i].push(" ");
            }
        }
    }
}

out="";
for(i=0;i<str.length;i++){
    for(j=0;j<str[i].length;j++){
        out+=str[i][j];
    }
    out+="\n";
}
return out;
}

編集:Philipp Flenkerのおかげで19バイトを節約しました。


末尾の改行は大丈夫なので、私はあなたがチェックを必要としないと思うsize==1
フィリップ・Flenker

1
@PhilippFlenker正しい。
ポールシュミッツ

1

Perl、83 +1 = 84バイト

-nフラグを指定して実行します。

$\="*
*";print$c="*"x($_+1);for$b(1..$_){@a=($")x$_;@a[$b-1,-$b]=(a,a);print@a}say$c

リテラル改行は、\nまたはで1バイト節約します$/

読みやすい:

$\="*\n*";
print$c="*"x($_+1);
for$b(1..$_){
    @a=($")x$_;
    @a[$b-1,-$b]=(a,a);
    print@a
}
say$c

このコードは、先頭行を印刷してに保存$cし、適切なスロットをasに置き換えて一連のスペースを印刷してから、再度先頭行を印刷します。

$\変数への割り当ては、インタプリタに、すべての後に内容(アスタリスク、改行、および別のアスタリスク)を出力するようprintに指示しますが、これはaの後には発生しませんsay


1

SmileBASIC、46バイト

INPUT I
GBOX I,I,1,1GLINE 1,I,I,1GLINE 1,1,I,I

(いいえ、SBは1インデックス付きグラフィックを使用しません...)


1

チャコール、8バイト(競合なし、言語のポストデートチャレンジ)

GH+↘↑↙N*

オンラインでお試しください!リンクは、コードの詳細バージョンです。説明:PolygonHollowコマンドのパラメーターとして使用すると、+ボックスが描画され、矢印が対角線を作成します。そこにいくつかの他のショートカット文字はあるが、彼らは役に立つ例えばあることを再定義する必要があるであろうYと同じです↖↗↓が、それがeqivalentだった場合↗↓↖、その後Y+十分であろう。


1

シェル135バイト):

 C(){ j=$(($1-1));for i in $(seq 0 $j);do dc<<<2o10i`echo $((1|2**$i|2**($j-$i)|2**$j|(($i==0||$i==$j))*(2**$j-1)))`p;done|tr 01 ' X';}

テスト:

 C 1
 X

 C 3
 XXX
 XXX
 XXX

 C 5
 XXXXX
 XX XX
 X X X
 XX XX
 XXXXX

 C 7
 XXXXXXX
 XX   XX
 X X X X
 X  X  X
 X X X X
 XX   XX
 XXXXXXX

 C 9
 XXXXXXXXX
 XX     XX
 X X   X X
 X  X X  X
 X   X   X
 X  X X  X
 X X   X X
 XX     XX
 XXXXXXXXX

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.