Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 316cf67

Browse files
Merge pull request codeisneverodd#36 from cruelladevil/github-action
�Seperate steps to resolve nothing to commit
2 parents 6c05434 + e13ee0b commit 316cf67

18 files changed

+302
-54
lines changed

‎.github/workflows/update-README.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,14 @@ jobs:
2828
run: npm install
2929
- name: build README.md
3030
run: npm run build
31+
- name: get diff
32+
id: get_diff
33+
run: |
34+
git diff --quiet ./README.md || echo "::set-output name=new_changes_exist::true"
3135
- name: update README.md
36+
if: steps.get_diff.outputs.new_changes_exist == 'true'
3237
run: |
33-
git add .
38+
git add ./README.md
3439
git config user.name github-actions
3540
git config user.email github-actions@github.com
3641
git commit -m "Automatic Update README.md"

‎README.md

Lines changed: 47 additions & 44 deletions
Large diffs are not rendered by default.

‎level-1/가운데-글자-가져오기.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,12 @@ function solution(s) {
2929
// 홀수인 경우 - 중간지점
3030
else answer = s[point];
3131
return answer;
32-
}
32+
}
33+
34+
// 정답 4 - chaerin-dev
35+
function solution(s) {
36+
return s.length % 2
37+
? s[parseInt(s.length / 2)]
38+
: s[s.length / 2 - 1] + s[s.length / 2];
39+
}
40+

‎level-1/같은-숫자는-싫어.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,12 @@ function solution(arr) {
1414
answer[answer.length - 1] !== arr[i] ? answer.push(arr[i]) : null
1515
}
1616
return answer;
17-
}
17+
}
18+
19+
//정답 3 - chaerin-dev
20+
function solution(arr) {
21+
// 콜백함수의 조건을 만족하는 '모든' 값을 배열로 반환하고,
22+
// 조건을 만족하는 값이 없으면 빈 배열을 반환하는 filter 메서드 활용
23+
// 첫 번째 요소의 경우 undefined와 비교
24+
return arr.filter((item, index) => item !== arr[index - 1]);
25+
}

‎level-1/나누어-떨어지는-숫자-배열.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,13 @@ function solution(arr, divisor) {
1717
answer.length === 0 ? answer.push(-1) : null
1818
answer.sort((a, b) => a - b)
1919
return answer;
20+
}
21+
22+
//정답 3. chaerin-dev
23+
function solution(arr, divisor) {
24+
let answer = [];
25+
arr.forEach((e) => {
26+
if (e % divisor === 0) answer.push(e);
27+
});
28+
return answer.length ? answer.sort((a, b) => a - b) : [-1];
2029
}

‎level-1/문자열-내-p와-y의-개수.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,13 @@ function solution(s) {
1717

1818
return p == y ? true : false;
1919
}
20+
21+
//정답 3 - chaerin-dev
22+
function solution(s) {
23+
let pCount = s.split(/p/i).length - 1;
24+
let yCount = s.split(/y/i).length - 1;
25+
return pCount === yCount;
26+
}
27+
// 문자열에서 특정 문자의 개수를 구하려면 split을 사용하면 된다.
28+
// Ex. "ababb".split("a") 의 결과는 ["", "b", "bb"]
29+
// => 즉, "a"의 갯수는 3에서 1을 뺀 2

‎level-1/문자열-내-마음대로-정렬하기.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,15 @@ function solution(strings, n) {
1010
return 0
1111
})
1212
return answer;
13-
}
13+
}
14+
15+
//정답 2 - chaerin-dev
16+
function solution(strings, n) {
17+
return strings.sort((a, b) => {
18+
// 인덱스 n번째 글자를 기준으로 오름차순 정렬
19+
if (a[n] > b[n]) return 1;
20+
else if (a[n] < b[n]) return -1;
21+
// 인덱스 n번째 글자가 같으면 사전순 정렬
22+
else return a > b ? 1 : -1;
23+
});
24+
}

‎level-1/문자열-내림차순으로-배치하기.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,15 @@ function solution(s) {
99
return 0
1010
}).join('')
1111
return answer;
12-
}
12+
}
13+
14+
//정답 2 - chaerin-dev
15+
function solution(s) {
16+
// 문자열 -> 배열 -> 정렬 -> 순서뒤집기 -> 문자열
17+
return s.split("").sort().reverse().join("");
18+
}
19+
20+
//정답3 - chaerin-dev
21+
function solution(s) {
22+
return s.split("").sort((a, b) => (a < b ? 1 : -1)).join("");
23+
}

‎level-1/문자열-다루기-기본.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,3 +33,16 @@ function solution(s) {
3333

3434
return answer;
3535
}
36+
37+
//정답 4 - chaerin-dev
38+
function solution(s) {
39+
// 길이가 4 혹은 6이 아니면 false 반환
40+
if (s.length !== 4 && s.length !== 6) return false;
41+
// 각 자리중에 숫자가 아닌 것이 하나라도 있으면 false 반환
42+
for (let i = 0; i < s.length; i++) {
43+
if (isNaN(Number(s[i]))) return false;
44+
}
45+
// 위의 모든 조건에 포함되지 않으면
46+
// (길이가 4 혹은 6이고, 숫자로만 구성되어 있으면) true 반환
47+
return true;
48+
}

‎level-1/소수-만들기.js

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,32 @@ function isPrime(num) {
2121
if (num % i === 0) return false
2222
}
2323
return true
24-
}
24+
}
25+
26+
//정답 2 - jaewon1676
27+
// https://programmers.co.kr/learn/courses/30/lessons/12977?language=javascript
28+
29+
function solution(nums) {
30+
let len = nums.length, answer = 0;
31+
32+
for (let i = 0; i < len - 2; i++) {
33+
for (let j = i + 1; j < len - 1; j++) {
34+
for (let k = j + 1; k < len; k++) {
35+
if (isPrime(nums[i] + nums[j] + nums[k])) {
36+
answer++;
37+
}
38+
}
39+
}
40+
}
41+
return answer;
42+
}
43+
44+
const isPrime = (n) => {
45+
for (let i = 2; i <= Math.sqrt(n); i++) { //n의 제곱근까지 순회
46+
if (n % i === 0) { // 나머지가 0이 나오면 소수가 아니다.
47+
return false;
48+
}
49+
}
50+
return true;
51+
}
52+
// 세개의 수를 더해야 하기때문에 수 for문 하나당 수 하나를 넣어서 순회하였다.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /