Python
-
[백준] 7785번: 회사에 있는 사람코딩(Coding)/백준 문제풀이 2020. 12. 29. 10:26
회사에 있는 사람 문제 상근이는 세계적인 소프트웨어 회사 기글에서 일한다. 이 회사의 가장 큰 특징은 자유로운 출퇴근 시간이다. 따라서, 직원들은 반드시 9시부터 6시까지 회사에 있지 않아도 된다. 각 직원은 자기가 원할 때 출근할 수 있고, 아무때나 퇴근할 수 있다. 상근이는 모든 사람의 출입카드 시스템의 로그를 가지고 있다. 이 로그는 어떤 사람이 회사에 들어왔는지, 나갔는지가 기록되어져 있다. 로그가 주어졌을 때, 현재 회사에 있는 모든 사람을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경..
-
[백준] 10174번: 팰린드롬코딩(Coding)/백준 문제풀이 2020. 12. 29. 10:20
링크: www.acmicpc.net/problem/10174 팰린드롬 문제 팰린드롬은 앞으로 읽으나 뒤로 읽으나 똑같은 단어나 숫자들을 말한다. 일반적으로 대소문자를 구분하지 않지만, 공백은 구분한다. 다음은 팰린드롬의 예시이다. Anna Harrah Arora Nat tan 9998999 123 321 $&&$ 모든 라인에 대해 팰린드롬인지 아닌지를 구분하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 n이 주어진다. 각 테스트 케이스는 한 줄의 텍스트로 이루어져있으며, 비어있는 줄은 없다. 출력 각 테스트 케이스에 대해 정답을 출력한다. 팰린드롬일 경우 "Yes"를 출력하고, 그렇지 않을 경우 "No"를 출력한다. 간단히 말해서 이 문제는 앞뒤로 읽었을때, 같은 글을 판단(대소..
-
[백준] 1037번: 약수코딩(Coding)/백준 문제풀이 2020. 12. 28. 10:18
링크: www.acmicpc.net/problem/1037 약수 문제 양수 A가 N의 진짜 약수가 되려면, N이 A의 배수이고, A가 1과 N이 아니어야 한다. 어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다. 출력 첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다. 진짜 약수는 1과 자신을 제외한 나머지 약수들을 뜻한다. 접근을 어떻게 해야되나 고민을 해보았는데, 그냥 진짜약수를 입력으로 받아오면 가운데 숫자를 곱해주면 될거..
-
[백준] 17608번: 막대기코딩(Coding)/백준 문제풀이 2020. 12. 24. 10:37
막대기 문제 아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 6, 9, 7, 6, 4, 6 이다. 일렬로 세워진 막대기를 오른쪽에서 보면 보이는 막대기가 있고 보이지 않는 막대기가 있다. 즉, 지금 보이는 막대기보다 뒤에 있고 높이가 높은 것이 보이게 된다. 예를 들어, 그림과 같은 경우엔 3개(6번, 3번, 2번)의 막대기가 보인다. N개의 막대기에 대한 높이 정보가 주어질 때, 오른쪽에서 보아서 몇 개가 보이는지를 알아내는 프로그램을 작성하려고 한다. 입력 첫 번째 줄에는 막대기의 개수를 나타내는 정수 N (2 ≤ N ≤ 100,000)이 주어지고 이어지는 N줄..
-
[백준] 8958번: OX퀴즈코딩(Coding)/백준 문제풀이 2020. 12. 24. 09:48
OX퀴즈 문제 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다. "OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다. OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오. 해당 문제는 OX결과를 문자열로 받으면 해당 문자열을 읽어서 연속된 O는 점수가 늘어나게하고 X가 나오면 다시 0점을 주고 다시 1로 점수를 세게끔... 그냥 문제 그대로 알고리즘을 구현하면 되는 쉬운문제이다. 나는 그냥 combo라는 변수를 선언해서 그 값만큼 더해주고 combo += 1로 연속된 점수에대한 갱..
-
[백준] 4673번: 셀프 넘버코딩(Coding)/백준 문제풀이 2020. 12. 23. 09:40
셀프 넘버 해당 문제는 에라토스테네스의 체를 통해 소수(Prime Number)를 구하는 알고리즘을 응용하면 풀 수 있다. 에라토스테네스의 체의 대한 설명은 아래 GIF를 통해 어느정도 이해 할 수 있을 것이다. 그리고 Java이긴 하지만 GitHub에도 올려놓았었다. github.com/JoSangYeon/Algorithm/tree/master/PrimeNumber JoSangYeon/Algorithm 알고리즘 공부. Contribute to JoSangYeon/Algorithm development by creating an account on GitHub. github.com 에라토스테네스의 체에 대해선 나중에 자세히 설명하는 글을 쓸 예정이지만 간단하게 정리하자면 다음과 같다. 소수는 1과 자기자..