pontz_rwのブログ

プログラミング等の備忘録

2017-07-01から1ヶ月間の記事一覧

ITP1_7_B: How many ways?

組み合わせの数 | プログラミング入門 | Aizu Online Judge] 組み合わせの数を求める問題 選ぶ3つの数をa, b, c (a < b < c) とすると、以下の条件を満たします。 aは合計値xを3で割った数より小さい (a < x / 3) bは、合計値xからaを引いた数を2で割った数…

ITP1_7_A: Grading

成績の判定 | プログラミング入門 | Aizu Online Judge 複数の条件分岐がある問題 条件分岐の順番に気を付ければ溶ける問題です。 解答 while True: m, f, r = map(int, input().split()) score = m + f if m == f == r == -1: break elif m == -1 or f == -…

ITP1_6_D: Matrix Vector Multiplication

行列とベクトルの積 | プログラミング入門 | Aizu Online Judge ベクトルと行列の積についての問題 この式に沿って問題を解いていきます。 解答1 n, m = map(int, input().split()) A = [] b = [] # 行列Aに要素を追加 for i in range(n): A.append([int(s) …

ITP1_6_C: Official House

公舎 | プログラミング入門 | Aizu Online Judge 配列に関する問題 多次元配列を利用します。 解答 houses = [[[0 for r in range(10)] for f in range(3)] for b in range(4)] n = int(input()) for i in range(n): b, f, r, v = map(int, input().split())…

ITP1_6_B: Finding Missing Cards

なくなったカードの発見 | プログラミング入門 | Aizu Online Judge 不足しているカードを指定された順序で表示する問題 トランプのリストを用意しておき、指定されたカードをフラグで管理するか、取り除くかします。 解答1 # トランプの生成 cards = [ "{} …

ITP1_6_A: Reversing Numbers

数列の反転 | プログラミング入門 | Aizu Online Judge リストを逆順にする問題 解答1 reverse()を使用してリストを逆順にしています。 input() list = input().split() list.reverse() print(" ".join(list)) 解答2 リストに対して[::-1]を指定することで逆…

ITP1_5_D: Structured Programming

構造化プログラミング | プログラミング入門 | Aizu Online Judge プログラムを書き直す問題 3の倍数であるか、剰余が3か0になるまで10で割り続け、3である場合に、その数字を出力します。 解答1 *演算子を使用し、リストやタプルから引数をアンパックします…

ITP1_5_C: Print a Chessboard

チェック柄の描画 | プログラミング入門 | Aizu Online Judge 繰り返し構文を用いて2種類の文字列を出力する問題 現在の行と列の番号の合計が奇数か偶数かで出力する文字列が変わります。 解答1 while True: H, W = map(int, input().split()) if H == W == …

ITP1_5_B: Print a Frame

フレームの描画 | プログラミング入門 | Aizu Online Judge 繰り返し構文を用いて2種類の文字列を出力する問題 四角形の枠と中身とで条件分岐させます。 枠を出力するのは、最初と最後の行と、そのほかの行の最初と最後の列です。 解答1 while True: H, W = …

ITP1_5_A: Print a Rectangle

長方形の描画 | プログラミング入門 | Aizu Online Judge 繰り返し構文を利用した文字列の出力をする問題 指定された行列分、文字列の出力を繰り返します。 列が進むたびに'#'を出力し、行が進むたびに改行を行います。 解答1 while True: H, W = map(int, i…

ITP1_4_D: Min, Max and Sum

最小値, 最大値, 合計値 | プログラミング入門 | Aizu Online Judge 最小値、最大値、合計値を求める問題 最小値、最大値については、順次比較をし、入れ替えるかどうかを条件分岐させます。 最大値は、順次加算していきます。 解答1 n = int(input()) line …

ITP1_4_C: Simple Calculator

単純計算器 | プログラミング入門 | Aizu Online Judge 入力値から数値と演算子を読み込み計算する問題 解答1 while True: line = input().split() a = int(line[0]) op = line[1] b = int(line[2]) if op == '+': print(a + b) elif op == '-': print(a - b…

ITP1_4_B: Circle

円 | プログラミング入門 | Aizu Online Judge 円の面積と円周を求める問題 円周率はmathモジュールの中に、piとして定義されています。 import mathを記述してモジュールを取り込みます。 math.pyと記述し、mathモジュールの中のpiを利用します。 解答 impo…

ITP1_4_A: A / B Problem

A / B 問題 | プログラミング入門 | Aizu Online Judge 割り算の問題 python3では、割り算に関して以下の三つの形式があります。 /は、除算をし浮動小数点数を返します。 //は、除算をし小数部を切り捨てて整数を返します。 %は、剰余を返します。 解答 a, b…

ITP1_3_D: How Many Divisors?

約数の数 | プログラミング入門 | Aizu Online Judge 約数の個数を求める問題 aからbまでの間繰り返すのにrange()を利用します。 cの約数であるということは、cで割ったときの余りが0であることに等しいので、その個数を記録します。 解答 a, b, c = map(int…

ITP1_3_C: Swapping Two Numbers

2つの数の交換 | プログラミング入門 | Aizu Online Judge 複数の入力値を比較し入れ替えて出力する問題 a > bとそれ以外の場合とで条件を分岐して出力します。 解答1 while True: a, b = map(int, input().split()) if a == 0 and b == 0: break elif a < …