반응형
CSS 배운 것
크롬의 경우 filter를 이용해 밝기를 조정할 수 있음. 인터넷 익스플로러 안됨.
div {
filter : brightness(70%);
}
인터넷 익스플로러의 경우 ::before
나 ::after
로 위에 레이어를 덧대주어야 함
div {
position: absolute;
}
div ::before {
content: '';
display: block;
position: absolute;
width: 100%;
height: 100%;
background-color: black;
opacity: 70%;
}
3d 속성을 이용하여 요소에 깊이감을 주어 크기감을 조정할 수 있다.
.parent {
perspective : 1000px; /* 원근감 1000px 만큼의 깊이 */
}
.childeren {
transform-style: preserve-3d;
/* perspective 를 부모로 부터 받아 자식요소에도 적용 */
transform : rotateY(120deg) translateZ(200px) rotateY(-120deg);
}
z-index
가 적용이 안될 때,
div {
position : relative;
}
엘리먼트를 반사 시키는 CSS
div {
-webkit-box-reflect: below 35px linear-gradient(transparent 45%, rgba(255, 255, 255, 0.25));
/* ie, 파폭 적용 불가. 컨텐츠의 반사 이미지를 표현. above below left right. linear-gradient : 투명마스크 위에서 아래로 점진적 전환. 투명화 지점, 투명화 농도 */
}
다른 CSS 파일을 메인 CSS파일에 적용시킬 때
@import 'reset.css';
장난꾸러기 현수
키 순서대로 줄 세웠는데, 자기보다 키 작은 짝꿍과 현수가 자리를 바꿨다. 현수와 자리를 바꾼 키작은 짝꿍은 누구인가?
function solution(num) {
let answer;
return answer;
}
let ex1 = [120, 125, 152, 130, 135, 135, 143, 127, 160];
let ex2 = [120, 130, 150, 150, 130, 150];
console.log(solution(ex1)); // [3, 8] 152, 127
console.log(solution(ex2)); // [3, 5] 150, 130
답)
function solution(num) {
let answer = [];
let sort = [...num].sort((a, b) => a - b);
for (let i = 0; i < num.length; i++) {
if (sort[i] !== num[i]) {
answer.push(i + 1);
}
}
return answer;
}
틀린답)
function solution(num) {
let answer = [];
let cnt = 0;
for (let i = 0; i < num.length - 1; i++) {
if (num[i] >= num[i + 1]) {
cnt ? (answer[cnt] = i + 2) : (answer[cnt++] = i + 1);
}
}
return answer;
}
/* 반례 */
let arr = [122, 123, 125, 125, 128, 161, 167, 167, 167, 161, 170];
console.log(solution(arr)); // [ 3, 10 ] 원래 답은 [7, 10]
x, y 좌표 정렬
x 좌표 오름차순으로 정렬한 뒤, x좌표가 같을 때는 y 좌표의 오름차순으로 정렬한다
function solution(num) {
//code here
return num;
}
let arr = [
[2, 7],
[1, 3],
[1, 2],
[2, 5],
[3, 6],
];
console.log(solution(arr)); //[ [ 1, 2 ], [ 1, 3 ], [ 2, 5 ], [ 2, 7 ], [ 3, 6 ] ]
답) .sort()
내장 함수를 쓰지 못할 때,
function solution(num) {
for (let i = 0; i < num.length - 1; i++) {
if (num[i][0] > num[i + 1][0]) {
[num[i], num[i + 1]] = [num[i + 1], num[i]];
}
}
for (let i = 0; i < num.length - 1; i++) {
if (num[i][0] === num[i + 1][0] && num[i][1] > num[i + 1][1]) {
[num[i], num[i + 1]] = [num[i + 1], num[i]];
}
}
return num;
}
답) .sort()
사용할 수 있을 때,
function solution(num) {
return num.sort((a, b) => a[0] - b[0] || a[1] - b[1]);
}
회의실 배정
회의의 시작시간과 끝나는 시간이 주어질 때, 회의가 가능한 최대 회의 수는?
시작시간 <= 끝나는 시간
function solution(num) {
let answer;
return answer;
}
let arr = [
[1, 4],
[2, 3],
[3, 5],
[4, 6],
[5, 7],
];
let arr1 = [
[3, 3],
[1, 3],
[2, 3],
];
console.log(solution(arr));
// 답 : 3
// 이유 : [ [ 2, 3 ], [ 3, 5 ], [ 5, 7 ] ]
console.log(solution(arr1));
// 답 : 2
// 이유 : [ [ 1, 3 ], [ 3, 3 ] ]
답) 끝나는 시간이 중요하니 끝나는 시간으로 정렬하고 가능한 회의 수를 구한다
function solution(num) {
let answer = 0;
num.sort((a, b) => a[1] - b[1] || a[0] - b[0]);
let fin = 0;
for(let el of num) {
if(el[0] >= fin) {
answer++;
fin = el[1];
}
}
return answer;
}
반응형
'2. 우당탕탕 개발자 > 2-1. 공부기록' 카테고리의 다른 글
~ 2021.10.23 TIL (1) | 2021.10.23 |
---|---|
2021.08.28 TIL(뮤직플레이어 앱 만들기) (0) | 2021.08.29 |
2021.08.22 TIL (CSS, HTML 모르는 거 정리) (0) | 2021.08.22 |
2021.8.21 TIL (정렬 3가지 알고리즘 문제) (0) | 2021.08.21 |
2021.8.14 TIL(선택 정렬, 버블 정렬) (0) | 2021.08.14 |
댓글