##トピック #1 繰り返し処理
AIZU ONLINE JUDGEの問題にSwiftで解答したものになります。競技プログラミングは普段やりませんので、こうしたほうが簡単!などがあればコメントで教えて下さい。
テスト入力はこちらのPaisa.IOで行っています。
###3_A 複数のHelloWorldの出力
問題
1000 個の "Hello World" を出力するプログラムを作成して下さい。
解答
for _ in 0 ..< 1000 {
print("Hello World")
}
###3_B テストケースの出力
問題
入力は複数のデータセットから構成されています。各データセットは1つの整数 x を含む1行から構成されています。xが0のとき入力の終わりを示し、このデータセットに対する出力を行ってはいけません。
各データセットごとに、以下の形式で x を出力して下さい
3
5
11
7
8
19
0
Case 1: 3
Case 2: 5
Case 3: 11
Case 4: 7
Case 5: 8
Case 6: 19
var count = 1
while(true) {
let a = Int(readLine()!)!
if a == 0 {
break
}
print("case \(count): \(a)")
count += 1
}
###3_C 2つの数の交換
問題
入力は複数のデータセットから構成されています。各データセットは空白で区切られた2つの整数 x, y を含む1行から構成されています。x と y がともに 0 のとき入力の終わりを示し、このデータセットに対する出力を行ってはいけません。
入力
3 2
2 2
5 3
0 0
出力
2 3
2 2
3 5
while(true){
let a = readLine()!.split(separator: " ").map({Int($0)!})
let first = a[0]
let second = a[1]
if first == 0 && second == 0{
break
}
print(a[1],a[0])
}
###3_D約数の数
入力
3つの整数a、b、cを読み込み、aからbまでの整数の中にcの約数がいくつあるのかを求めるプロフラムを作成して下さい。
解答
let a = readLine()!.split(separator: " ").map({Int($0)!})
var multipleArr: [Int] = []
var count = 0
for i in 0 ..< a[2] {
if a[2].isMultiple(of: i) {
multipleArr.append(i)
}
}
for i in a[0] ..< a[1] {
if multipleArr.contains(i) {
count += 1
}
}
print(count)