Skip to content

Commit effde15

Browse files
authored
Merge pull request jsk3342#242 from wang-yurin/main
Solve : 037~039번 문제 해결
2 parents 6e7d289 + 9bb2bee commit effde15

File tree

6 files changed

+129
-0
lines changed

6 files changed

+129
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# 문제37 : 반장 선거
2+
3+
새 학기를 맞아 호준이네 반은 반장 선거를 하기로 했습니다. 그런데 표를 하나씩 개표하는 과정이 너무 번거롭게 느껴진 당신은 **학생들이 뽑은 후보들을 입력받으면 뽑힌 학생의 이름과 받은 표 수를 출력하는 프로그램**을 작성하기로 하였습니다.
4+
5+
```jsx
6+
**입력**
7+
원범 원범 혜원 혜원 혜원 혜원 유진 유진
8+
9+
**출력**
10+
혜원(이)가 총 4표로 반장이 되었습니다.
11+
```
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
# 문제37 : 반장 선거
3+
4+
새 학기를 맞아 호준이네 반은 반장 선거를 하기로 했습니다. 그런데 표를 하나씩 개표하는 과정이 너무 번거롭게 느껴진 당신은 **학생들이 뽑은 후보들을 입력받으면 뽑힌 학생의 이름과 받은 표 수를 출력하는 프로그램**을 작성하기로 하였습니다.
5+
6+
```jsx
7+
**입력**
8+
원범 원범 혜원 혜원 혜원 혜원 유진 유진
9+
10+
**출력**
11+
혜원(이)가 총 4표로 반장이 되었습니다.
12+
```
13+
*/
14+
15+
const arr = ["원범", "원범", "혜원", "혜원", "혜원", "혜원", "유진", "유진"];
16+
let result = {};
17+
let winner = "";
18+
19+
for (let i in arr) {
20+
let value = arr[i];
21+
if (result[value] === undefined) {
22+
result[value] = 1;
23+
} else {
24+
result[value] = result[value] + 1;
25+
}
26+
27+
winner = Object.keys(result).reduce((a, b) => {
28+
return result[a] > result[b] ? a : b;
29+
});
30+
}
31+
32+
console.log(`${winner}(이)가 총 ${result[winner]}표로 반장이 되었습니다.`);
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# 문제38 : 호준이의 아르바이트
2+
3+
호준이는 아르바이트로 영어 학원에서 단어 시험지를 채점하는 일을 하고 있다. 호준이가 일하는 학원은 매번 1위부터 3위까지의 학생에게 상으로 사탕을 준다. 그런데 오늘은 마침 사탕이 다 떨어져서 호준이가 채점을 하고 점수를 보내면, 당신이 아이들의 숫자만큼 사탕을 사러 가기로 했다.
4+
5+
1위 ~ 3위 학생은 여러명일 수 있고 1~3위 학생 중 중복되는 학생까지 포함하여 사탕을 사기로 한다.
6+
**학생들의 점수를 공백으로 구분하여 입력을 받고 사탕을 받을 학생의 수를 출력하세요.**
7+
8+
```jsx
9+
**입출력**
10+
11+
입력 : 97 86 75 66 55 97 85 97 97 95
12+
출력 : 6
13+
```
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
# 문제38 : 호준이의 아르바이트
3+
4+
호준이는 아르바이트로 영어 학원에서 단어 시험지를 채점하는 일을 하고 있다. 호준이가 일하는 학원은 매번 1위부터 3위까지의 학생에게 상으로 사탕을 준다. 그런데 오늘은 마침 사탕이 다 떨어져서 호준이가 채점을 하고 점수를 보내면, 당신이 아이들의 숫자만큼 사탕을 사러 가기로 했다.
5+
6+
1위 ~ 3위 학생은 여러명일 수 있고 1~3위 학생 중 중복되는 학생까지 포함하여 사탕을 사기로 한다.
7+
**학생들의 점수를 공백으로 구분하여 입력을 받고 사탕을 받을 학생의 수를 출력하세요.**
8+
9+
```jsx
10+
**입출력**
11+
12+
입력 : 97 86 75 66 55 97 85 97 97 95
13+
출력 : 6
14+
```
15+
*/
16+
17+
// 중복인정?
18+
const scores = prompt().split(" ");
19+
20+
const sortScores = scores.sort((a, b) => b - a);
21+
let count = 0;
22+
let result = new Set([]);
23+
24+
sortScores.forEach((e) => {
25+
if (result.size < 3) {
26+
result.add(e);
27+
count++;
28+
}
29+
return result;
30+
});
31+
console.log(count);
32+
console.log(result);
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# 문제39 : 오타 수정하기
2+
3+
혜원이는 평소 영타가 빠르고 정확한 것을 친구들에게 자랑하고 다녔습니다. 반 친구들이 혜원이의 타자 속도가 빠르다는 것을 모두 알게 되자 혜원이는 모두의 앞에서 타자 실력을 보여주게 됩니다.
4+
5+
그런데 막상 보여주려니 긴장이 되서 문장의 모든 e를 q로 잘못 친 것을 발견했습니다.
6+
혜원이는 프로그램을 돌려 재빠르게 모든 q를 e로 바꾸는 프로그램을 작성하려고 합니다.
7+
8+
**문장이 입력되면 모든 q를 e로 바꾸는 프로그램을 작성해 주세요.**
9+
10+
```jsx
11+
**입출력**
12+
13+
입력 : querty
14+
출력 : euerty
15+
16+
입력 : hqllo my namq is hyqwon
17+
출력 : hello my name is hyewon
18+
```
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/*
2+
# 문제39 : 오타 수정하기
3+
4+
혜원이는 평소 영타가 빠르고 정확한 것을 친구들에게 자랑하고 다녔습니다. 반 친구들이 혜원이의 타자 속도가 빠르다는 것을 모두 알게 되자 혜원이는 모두의 앞에서 타자 실력을 보여주게 됩니다.
5+
6+
그런데 막상 보여주려니 긴장이 되서 문장의 모든 e를 q로 잘못 친 것을 발견했습니다.
7+
혜원이는 프로그램을 돌려 재빠르게 모든 q를 e로 바꾸는 프로그램을 작성하려고 합니다.
8+
9+
**문장이 입력되면 모든 q를 e로 바꾸는 프로그램을 작성해 주세요.**
10+
11+
```jsx
12+
**입출력**
13+
14+
입력 : querty
15+
출력 : euerty
16+
17+
입력 : hqllo my namq is hyqwon
18+
출력 : hello my name is hyewon
19+
```
20+
*/
21+
22+
const changeQtoE = prompt();
23+
console.log(changeQtoE.replace(/q/gi, "e"));

0 commit comments

Comments
 (0)