티스토리 뷰
Q.2557 숫자의 개수
- 세 개의 자연수 A, B, C가 주어질 때 A×B×C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오.
예를 들어 A = 150, B = 266, C = 427 이라면
A × B × C = 150 × 266 × 427 = 17037300 이 되고,
계산한 결과 17037300 에는 0이 3번, 1이 1번, 3이 2번, 7이 2번 쓰였다.
입력 :
- 첫째 줄에 A, 둘째 줄에 B, 셋째 줄에 C가 주어진다. A, B, C는 모두 100보다 같거나 크고, 1,000보다 작은 자연수이다.
출력 :
- 첫째 줄에는 A×B×C의 결과에 0 이 몇 번 쓰였는지 출력한다. 마찬가지로 둘째 줄부터 열 번째 줄까지 A×B×C의 결과에 1부터 9까지의 숫자가 각각 몇 번 쓰였는지 차례로 한 줄에 하나씩 출력한다.
<소스 코드>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 |
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt();
int cnt[] = new int[10];
int result = a*b*c;
while(result != 0) {
cnt[result%10]++;
result /= 10;
}
for(int i = 0; i < 10; i++)
System.out.println(cnt[i]);
}
} |
cs |
======================================================================================
Q. 8958 OX퀴즈
- "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
입력 :
- 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가 0보다 크고 80보다 작은 문자열이 주어진다. 문자열은 O와 X만으로 이루어져 있다.
출력 :
- 각 테스트 케이스마다 점수를 출력한다.
<소스 코드>
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 |
import java.util.*;
public class Prac {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int test_case = 0; test_case < T; test_case++) {
String resultOfQuiz = sc.next(); //퀴즈 결과 입력
int point = 1;//포인트 1로 초기화
int answer = 0;//총 점수 0으로 초기화
for(int i = 0; i < resultOfQuiz.length(); i++) {
if(resultOfQuiz.charAt(i) == 'O') {//결과가 'O'라면
answer += point; //answer에 point 더하기.
point++; //point + 1
}
else //결과가 'X'라면
point = 1; //point를 다시 1로 초기화
}
System.out.println(answer);
}
}
} |
cs |
======================================================================================
Q.2920 음계
- 다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다.
1부터 8까지 차례대로 연주한다면 ascending, 8부터 1까지 차례대로 연주한다면 descending, 둘 다 아니라면 mixed 이다.
연주한 순서가 주어졌을 때, 이것이 ascending인지, descending인지, 아니면 mixed인지 판별하는 프로그램을 작성하시오.
입력 :
- 첫째 줄에 8개 숫자가 주어진다. 이 숫자는 문제 설명에서 설명한 음이며, 1부터 8까지 숫자가 한 번씩 등장한다.
출력 :
- 첫째 줄에 ascending, descending, mixed 중 하나를 출력한다.
<소스 코드>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 |
import java.util.*;
public class Prac {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int input[] = new int[8];
boolean asc = false;
boolean desc = false;
input [0] = sc.nextInt();
for(int i = 1; i < 8; i++) {
input[i] = sc.nextInt();
if(input[i] > input[i-1])
asc = true;
else
desc = true;
}
System.out.println((asc && desc) ? "mixed" : (asc) ? "ascending" : "descending");
}
} |
cs |
======================================================================================
Q.10039 평균점수
상현이가 가르치는 아이폰 앱 개발 수업의 수강생은 원섭, 세희, 상근, 숭, 강수이다.
어제 이 수업의 기말고사가 있었고, 상현이는 지금 학생들의 기말고사 시험지를 채점하고 있다. 기말고사 점수가 40점 이상인 학생들은 그 점수 그대로 자신의 성적이 된다. 하지만, 40점 미만인 학생들은 보충학습을 듣는 조건을 수락하면 40점을 받게 된다. 보충학습은 거부할 수 없기 때문에, 40점 미만인 학생들은 항상 40점을 받게 된다.
학생 5명의 점수가 주어졌을 때, 평균 점수를 구하는 프로그램을 작성하시오.
입력 :
입력은 총 5줄로 이루어져 있고, 원섭이의 점수, 세희의 점수, 상근이의 점수, 숭이의 점수, 강수의 점수가 순서대로 주어진다.
점수는 모두 0점 이상, 100점 이하인 5의 배수이다. 따라서, 평균 점수는 항상 정수이다.
출력 :
첫째 줄에 학생 5명의 평균 점수를 출력한다.
<소스 코드>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 |
import java.util.*;
public class Prac {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] score = new int[5];
int sum = 0;
for(int i = 0; i < 5; i++) {
score[i] = sc.nextInt();
if(score[i] < 40)
score[i] = 40;
sum += score[i];
}
System.out.println(sum/5);
}
} |
cs |
======================================================================================
문제 사이트 및 참고 사이트 : https://www.acmicpc.net/step/6
※
본 게시물은 개인적인 용도로 작성된 게시물입니다. 이후 포트폴리오로 사용될 정리 자료이니 불펌과 무단도용은 하지 말아주시고 개인 공부 목적으로만 이용해주시기 바랍니다.
※
'자료구조 및 알고리즘 > 백준' 카테고리의 다른 글
[백준]1316번, 그룹 단어 체커 (1) | 2017.10.14 |
---|---|
[백준]1157번 단어 공부 (0) | 2017.10.09 |
[백준]1152번, 단어의 개수 (0) | 2017.10.07 |
[백준]1065번 한수 (0) | 2017.10.03 |
[백준]4673번 셀프 넘버 (0) | 2017.10.02 |
- Total
- Today
- Yesterday
- 파이썬 클래스
- 파이썬 진수 변환
- 명품 c++ 실습
- 백준
- 파이썬 선택문
- 자바 에센셜 실습문제
- 자바스크립트 그래프
- 버츄어박스
- css
- 파이썬 단계적 개선
- 백준 10451
- 파이썬 예제
- 파이썬 연산자
- 파이썬 while
- 파이썬 for
- 파이썬 문자열
- 파이썬 터틀
- 파이썬 리스트
- 백준 1874
- 자바
- 파이썬
- css 박스
- 자바스크립트 자료구조
- 파이썬 객체
- 파이썬 if문
- 백준 11501
- 파이썬 함수
- css 그리드
- 웹
- 자료구조
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |