[過去ログ] プログラミングのお題スレ Part17 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
579
(6): 蟻人間 ◆T6xkBnTXz7B0 2020/05/22(金)21:10 ID:OWpC2iYH(1) AAS
お題: XY平面上の謎のキャラクターPが原点に居てY軸(北)の方向を向いている。Pは何回か次のいずれかのアクションを行う。
アクション1. 90度左に自転する。
アクション2. 90度右に自転する。
アクション3. 一つ前に進む。
入力は、カンマ区切りのアクション番号の並びとする。Pは入力されたアクションを順番に実行する。
出力は、入力の各アクションを実行した後の位置と向き(東西南北)を順番に並べたものとする。

入力例1) 1, 3, 3, 2, 3
入力例2) 3, 2, 3, 1
580: 2020/05/23(土)00:30 ID:goh2AXYc(1/2) AAS
>>579
Java
外部リンク:paiza.io
581: 2020/05/23(土)02:20 ID:zNKp3hWU(1/3) AAS
>>579 Ruby
def moves( str )
x, y = 0, 0
r = 0
ta = [ [0,-1], [1,0], [0,1], [-1,0] ]
ts = %w{北 東 南 西}
str.split(/,\s*/).each{|ch|
case ch
when '1'; r = (r - 1) % 4
when '2'; r = (r + 1) % 4
省9
582: 2020/05/23(土)03:35 ID:zNKp3hWU(2/3) AAS
>>579 Ruby
def moves( str )
x, y = 0, 0
dx, dy = 0, -1
ts2 = %w{北 西 \ 東 南 }
str.split(/,\s*/).each{|ch|
case ch
when '1'; dx, dy = dy, -dx
when '2'; dx, dy = -dy, dx
when '3'
省8
583: 2020/05/23(土)13:53 ID:zNKp3hWU(3/3) AAS
>>579 Ruby
Vectorで書き直して歩数を追加

require 'matrix'
def moves( str )
xy = Vector[ 0, 0, 0 ]
v = Vector[ 0, -1, 1 ]
ts = %w{ 北 西 x 東 南 }
str.split(/,\s*/).each{|ch|
case ch
when '1'; v = Vector[ v[1],-v[0], 1]
省6
596: 2020/05/24(日)00:55 ID:ekGE4/33(1) AAS
>>579
perl5
外部リンク:paiza.io
599: 2020/05/25(月)02:07 ID:XU2RCh4p(1) AAS
>>579
Kotlin
外部リンク:paiza.io
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.036s