백준

Algorithms/백준

[백준] '바구니 순서 바꾸기' - Java

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2번째 바구니, ..., 가장 오른쪽 바구니를 N번째 바구니라고 부른다. 도현이는 앞으로 M번 바구니의 순서를 회전시키려고 만들려고 한다. 도현이는 바구니의 순서를 회전시킬 때, 순서를 회전시킬 범위를 정하고, 그 범위 안에서 기준이 될 바구니를 선택한다. 도현이가 선택한 바구니의 범위가 begin, end이고, 기준이 되는 바구니를 mid라고 했을 때, begin, begin+1, ..., mid-1, mid, mid+1, ..., end-1, end 순서로 되어있는 바구니의 순서를 mid, mid+1, ..., ..

Algorithms/백준

[백준] '검증수' - Java

컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다. 고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다. 검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다.예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면, 각 숫자를 제곱한 수들의 합 0+16+4+25+36 = 81 을 10으로 나눈 나머지인 1이 검증수이다.제곱을 구하는 함수를 활용하고, 그 값들을 누적합하여 마지막 검증수를 도출해내는 문제였다. for(int i = 0; i 출력문으로 잘 진행되고있는지 과정을 확인하고, data[i] * data[i] 로 제곱을 구하는 방식이다.for(..

Algorithms/백준

[백준] '바구니 뒤집기' - Java

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2번째 바구니, ..., 가장 오른쪽 바구니를 N번째 바구니라고 부른다. 도현이는 앞으로 M번 바구니의 순서를 역순으로 만들려고 한다. 도현이는 한 번 순서를 역순으로 바꿀 때, 순서를 역순으로 만들 범위를 정하고, 그 범위에 들어있는 바구니의 순서를 역순으로 만든다.바구니의 순서를 어떻게 바꿀지 주어졌을 때, M번 바구니의 순서를 역순으로 만든 다음, 바구니에 적혀있는 번호를 가장 왼쪽 바구니부터 출력하는 프로그램을 작성하시오. N개의 바구니, M번의 테스트케이스가 주어진다. 예를 들어 1 2가 주어지면1번바구니부..

Algorithms/백준

[백준] '공 넣기' - Java

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이 들어있지 않으며, 바구니에는 공을 1개만 넣을 수 있다.도현이는 앞으로 M번 공을 넣으려고 한다. 도현이는 한 번 공을 넣을 때, 공을 넣을 바구니 범위를 정하고, 정한 바구니에 모두 같은 번호가 적혀있는 공을 넣는다. 만약, 바구니에 공이 이미 있는 경우에는 들어있는 공을 빼고, 새로 공을 넣는다. 공을 넣을 바구니는 연속되어 있어야 한다.공을 어떻게 넣을지가 주어졌을 때, M번 공을 넣은 이후에 각 바구니에 어떤 공이 들어 있는지 구하는 프로그램을 작성하시오.N은 바구니의 개수, M은 테스트케이스의 개수이어서..

Algorithms/백준

[백준] '공 바꾸기' - Java

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다.바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다.도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다.공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지구하는 프로그램을 작성하시오.임시 변수를 두고 그 변수를 통해 값을 교환하는 방식을 사용하였다. String INPUT = br.readLine();String[] INPUT_1 = INPUT.split(" ");int N = Integer.parseInt(INPUT_1[0]);int M = I..

Algorithms/백준

[백준] '럭비 클럽' - Java

올 골드 럭비 클럽의 회원들은 성인부 또는 청소년부로 분류된다.나이가 17세보다 많거나, 몸무게가 80kg 이상이면 성인부이다.그 밖에는 모두 청소년부이다. 클럽 회원들을 올바르게 분류하라.입력받는 값들 중 이름을 제외한 2,3번째 값을 if문 처리하여 조건에 맞게 성인부와 청소년부로 구분하고StringBuilder에 저장 후 최종 출력해야겠다고 생각했다.while(true) { s = br.readLine(); if(s.contains("#") && s.contains("0")) break; String[] st = new String[3]; st = s.split(" "); if(Integer.parseInt(st[1]) > 17 || Integer.parseInt(s..

Algorithms/백준

[백준] '꼬마 정민' - Java

꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례이다!첫 입력값으로 split()함수를 통해 숫자를 구분하여 더해볼까 생각도해보고StringTokenizer()를 통해 문자열형태로 입력받은 후 Integer.parseInt()로 정수 더하기를 해볼까 생각도 해보았다.일단은 일반적인 방법으로 풀어보고자 하였다.// 런타임 에러 (NumberFormat) 발생, 문자열을 숫자로 바꿔 연산하고자할때 발생.String INPUT = br.readLine();String[] INPUT_1 = INPUT.split(" ");int result = 0;for(int i = 0; i INPUT_1 배열에 split(" ") 함수로 공백 기준으로 분리하여 값을 넣어주고,f..

Algorithms/백준

[백준] '모음의 개수' - Java

영문 문장을 입력받아 모음의 개수를 세는 프로그램을 작성하시오. 모음은 'a', 'e', 'i', 'o', 'u'이며 대문자 또는 소문자이다. 먼저 모든 영문들을 toUpperCase()를 통하여 대문자로 만들고, if문에서 charAt()을 통해 일치하는 모음들즉 A, E, I, O, U 들을 찾고자 하였다.BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String s = "";int count = 0;char test;while(true) { s = br.readLine(); if(s.equals("#")) break; s = s.toUpperCase(); for(int i = 0; i whil..

Algorithms/백준

[백준] '피보나치 수 5' - Java

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 피보나치 수의 개념을 알고 코드로 구현하는 문제였다. 앞선 두 수와 합해지는 수, 총 3개의 변수로 나누어 구현해보았다. Answer 1) int i = 0; int k = 1; int r = i + k; int cnt = 0;..

LEFT
'백준' 태그의 글 목록