PS/Baekjoon Online Judge 594

[백준 05949] Adding Commas [Python]

문제Bessie is working with large numbers N (1 입력Line 1: A single integer: N 출력Line 1: The integer N with commas inserted before each set of three digits except the first digits (as traditionally done in many cultures)풀이입력받은 수를 읽기 쉽도록 3자리마다 쉼표를 넣어 출력해주는 문제다.format함수를 사용해 쉽게 풀이할 수 있다.소스코드보기출처https://www.acmicpc.net/problem/5949

[백준 03996] 위대한 사기꾼 [Python]

문제믿기 힘들겠지만 상근이는 이번 겨울 방학에 달에 갔다 왔다. 방학이 끝나고 다시 학교로 돌아온 상근이는 친구들에게 달나라 사람(Selenites)을 만났던 이야기를 해주었다.상근이는 달에서 사용하는 수 체계를 주로 설명해주었다. 달에서는 음의 진법을 사용한다.음의 진법은 사람들이 이해하기는 어렵다. 따라서, 상근이는 달을 여행하는 동안 0과 𝑛을 포함하는 사이의 수 중에서 𝑘진법과 −𝑘진법에서 표현이 같은 수를 모두 외웠다. 상근이가 외운 숫자의 개수를 구하는 프로그램을 작성하시오.입력첫째 줄에 𝑛과 𝑘가 주어진다. (1 ≤ 𝑛 ≤ 10^15, 2 ≤ 𝑘 ≤ 1,000)출력첫째 줄에 상근이가 달에서 생활하면서 외운 숫자의 개수를 출력한다.풀이K진법과 -K진법으로 표현한 수가 표현이 동일한..

[백준 05789] 한다 안한다 [Python]

문제옛날에는 결정하기 어려운 일이 있을 때는 꽃을 이용해서 결정을 내렸다. 꽃을 하나 떼서 잎을 하나씩 떼면서, 한다와 안한다를 번갈아 가면서 말하다가 마지막 잎을 뗄 때 말한 말로 결정을 했다.상근이는 이 방법을 응용해서 결정하기 어려운 일을 하나 결정하려고 한다.먼저, 0과 1로 이루어진 문자열을 랜덤으로 하나 만든다. 그 다음 문자열의 양 끝에서 수를 하나씩 고르고, 두 수를 비교한다. 수가 같으면 "한다"이고, 다르면 "안한다"이다. 그 다음에는 고른 수를 버리고, 모든 수를 고를 때까지 이 작업을 반복한다. 따라서, 마지막으로 고르는 두 숫자로 결정을 내리는 것이다.0과 1로 이루어진 문자열이 주어졌을 때, 상근이가 내리는 결정을 구하는 프로그램을 작성하시오.입력첫째 줄에는 테스트 케이스의 개수..

[백준 31822] 재수강 [Python]

문제국민대학교에서는 수강 신청, 성적 조회 등 과목의 구분이 필요할 때 ’과목 코드’를 사용한다. 과목 코드는 10자리로 이루어져 있으며, 7번째 자리는 영어 알파벳 대문자 또는 숫자, 8번째 자리는 하이픈(-), 나머지 자리는 숫자로 이루어져 있다.당신은 망한 학점을 복구하기 위해 재수강을 해야 하는데, 재수강을 하기 위해서는 재수강할 과목과 과목코드의 앞 5자리가 일치하는 과목을 수강해야 한다. 재수강할 과목의 과목 코드와 수강 신청 가능한 과목 목록이 주어지면, 재수강으로 인정되는 과목이 몇 개가 있는지 출력하라.입력첫 번째 줄에 재수강할 과목의 과목 코드가 주어진다.두 번째 줄에 수강 신청 가능한 과목의 개수 𝑁이 주어진다. (1≤𝑁≤16) 그다음 𝑁개의 줄에 걸쳐 수강 신청 가능한 과목의 ..

[백준 05724] 파인만 [Python]

문제리처드 필립스 파인만은 노벨 물리학상을 수상한 미국의 물리학자이다. 그는 이론물리학을 연구했고, 양자 컴퓨팅 분야를 개척했다. "Surely You’re Joking, Mr. Feynman!", "What Do You Care What Other People Think?"와 같은 그의 책은 많은 사람들의 사랑을 받았고, 한국에도 번역되어 출판되어져 있다. 그는 오랜 기간동안 퍼즐, 자물쇠, 암호를 만들고 푸는 일에 중독되어 있었다. 어느 날, 남아메리카의 한 농장에서 파인먼의 것으로 추정되는 한 메모가 발견되었다. 퍼즐은 이 메모에는 중간자와 전자기에 대한 내용이 적혀있었고, 가장 마지막 줄에는 다음과 같은 퀴즈가 적혀져 있었다. "N × N 정사각형으로 이루어진 그리드에는 서로 다른 정사각형이 몇 ..

[백준 05692] 팩토리얼 진법 [Python]

문제상근이는 보통 사람들이 사는 것과는 조금 다른 삶을 사는 사람이다. 상근이는 이런 사람들의 시선이 부담스럽기 때문에, 자신만의 숫자를 개발하기로 했다. 바로 그 이름은 팩토리얼 진법이다. 팩토리얼 진법은 각 자리에 올 수 있는 숫자는 0부터 9까지로 10진법과 거의 비슷하다. 하지만, 읽는 법은 조금 다르다. 팩토리얼 진법에서는 i번 자리의 값을 a(i) × i!로 계산한다. 즉, 팩토리얼 진법에서 719는 10진법에서 53과 같다. 그 이유는 7×3! + 1×2! + 9×1! = 53이기 때문이다.팩토리얼 진법으로 작성한 숫자가 주어졌을 때, 10진법으로 읽은 값을 구하는 프로그램을 작성하시오. 입력입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가..

[백준 05567] 결혼식 [Java]

문제상근이는 자신의 결혼식에 학교 동기 중 자신의 친구와 친구의 친구를 초대하기로 했다. 상근이의 동기는 모두 N명이고, 이 학생들의 학번은 모두 1부터 N까지이다. 상근이의 학번은 1이다.상근이는 동기들의 친구 관계를 모두 조사한 리스트를 가지고 있다. 이 리스트를 바탕으로 결혼식에 초대할 사람의 수를 구하는 프로그램을 작성하시오.입력첫째 줄에 상근이의 동기의 수 n (2 ≤ n ≤ 500)이 주어진다. 둘째 줄에는 리스트의 길이 m (1 ≤ m ≤ 10000)이 주어진다. 다음 줄부터 m개 줄에는 친구 관계 ai bi가 주어진다. (1 ≤ ai  ≤ n) ai와 bi가 친구라는 뜻이며, bi와 ai도 친구관계이다. 출력첫째 줄에 상근이의 결혼식에 초대하는 동기의 수를 출력한다.풀이상근이의 친구와, 친..