https://www.acmicpc.net/problem/1302
1302번: 베스트셀러
첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고
www.acmicpc.net
입력 값 첫번째는 팔린 책의 갯수 그 다음 줄부터는 팔린 책의 제목들이 차례로 들어온다
그 중 가장 많이 팔린 제목을 출력해주면 됨!
어떻게 풀어야할지 감이 안잡히는뎅....일단 하나씩 비교해서 int 하나 만들어서 값 올려주고 비교해야 할 듯??
값 받고 int 2개 count, max 만들고 카운트 올려서 이걸 비교할거임
결과 넣을 string 하나 만들고 제목 비교 할 string 제목 첫번째로 넣어놓음
그리고 Sort해서 정렬 한번 쭈욱 함 순서대로 비교하기 위함
for문 돌면서 첫번째부터 제목 겹치는거 카운트 올려줌
다 올라가면 max로 옮겨담고 다 돌고
마지막에 max와 count 비교해서 결과 담고 출력
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
|
namespace _1302
{
class Program
{
static void Main(string[] args)
{
var N = int.Parse(Console.ReadLine());
List<string> arrInput = new List<string>();
for (int i = 0; i < N; i++)
{
arrInput.Add(Console.ReadLine());
}
int count= 0;
int maxCount = 0;
string name = arrInput[0];
string result = null;
arrInput.Sort();
for (int j = 0; j < N; j++)
{
if (arrInput[j] == name)
{
count++;
}
else
{
if (maxCount < count)
{
maxCount = count;
result = name;
}
name = arrInput[j];
count= 1;
}
}
if (maxCount < count)
{
result = name;
}
Console.Write(result);
}
}
}
|
cs |
'c# > 알고리즘' 카테고리의 다른 글
1074번 z (0) | 2020.06.29 |
---|---|
2504번 괄호의 값 - 런타임 에러 - 해결 (0) | 2020.06.18 |
1343번 폴리오미노 (0) | 2020.06.01 |
1181 단어 정렬 (0) | 2020.05.25 |
2135 문자열 압축하기 - 어려워..나중에 (0) | 2020.05.18 |