[백준 24408] Mult! (C#, C++) - soo:bak
작성일 :
문제 링크
설명
각 라운드는 첫 번째로 주어진 수가 기준이 됩니다. 이후 주어지는 수를 순서대로 보다가 기준 수의 배수가 처음 등장하면 그 값을 출력합니다.
출력 직후 다음 수가 새 라운드의 기준이 되어 같은 과정을 반복합니다. 입력은 여러 라운드가 이어진 하나의 수열입니다.
접근법
먼저, 첫 수를 현재 라운드의 기준 값으로 저장합니다.
다음으로, 숫자를 순서대로 읽으며 기준의 배수인지 확인합니다. 배수가 처음 발견되면 즉시 출력하고, 다음 수를 새 기준으로 교체합니다.
이후, 입력이 끝날 때까지 이 과정을 반복합니다.
Code
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
using System;
namespace Solution {
class Program {
static void Main(string[] args) {
var n = int.Parse(Console.ReadLine()!);
var tar = int.Parse(Console.ReadLine()!);
for (var i = 1; i < n; i++) {
var num = int.Parse(Console.ReadLine()!);
if (num % tar == 0) {
Console.WriteLine(num);
i++;
if (i < n) tar = int.Parse(Console.ReadLine()!);
}
}
}
}
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n, tar; cin >> n >> tar;
for (int i = 1; i < n; i++) {
int num; cin >> num;
if (num % tar == 0) {
cout << num << "\n";
i++;
if (i < n) cin >> tar;
}
}
return 0;
}