백준 BOJ C# 3052 나머지
2020. 1. 20. 22:47ㆍ백준 알고리즘 단계별/1차원 배열
반응형
백준 BOJ C# [3052] [나머지]
출제 링크 : https://www.acmicpc.net/problem/3052
3052번: 나머지
문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 입력 첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다. 출력 첫째 줄에, 42로 나누었
www.acmicpc.net
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
using System;
using System.Collections;
using static System.Console;
namespace baekioon
{
class MainApp
{
static void Main()
{
// 다른지 나타낼 count 변수
/*int count = 0;*/
// 입력값 저장 배열
int[] nums = new int[10];
// 같은 값 저장 배열
ArrayList sameList = new ArrayList();
// 입력 받고 42로 나누어주기
for (int i = 0; i < 10; i++)
{
nums[i] = int.Parse(ReadLine());
nums[i] = nums[i] % 42;
}
for (int j = 9; j >= 0; j--)
{
for (int k = 0; k < 10; k++)
{
if (nums[j] == nums[k])
}
}
// 배열 출력
for (int i = 0; i < 10; i++)
{
WriteLine("nums{0} : {1}", i, nums[i]);
}
.... 모르겟돠아앙
}
}
}
|
이런 저런 방법을 구상하면서 코드를 작성했다.
원래는 입력받은 값을 바로 42로 나누어서 그걸 배열에 저장하고
배열 하나하나의 요소들을 나머지 요소와 비교후
만약 같다면 그 요소들을 ArrayList에 저장하고
같은 요소들의 ArrayList의 길이를 구할려고...했지만
너어어어무 돌아가는거 같아서 이리저리 검색해봤다.
그러던중 찾았던 bool 값의 배열선언이다.
훨씬 깔끔하고 간단하게 코드가 완성되었다.
반응형