Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- TiL
- 소켓
- 4기
- 코드트리
- 시스템콜
- 모션비트
- pintos
- 알고리즘
- 티스토리챌린지
- 크래프톤정글
- 오블완
- corou
- userprog
- 자바스크립트
- Flutter
- 자바
- HTML
- JavaScript
- CSS
- Java
- 나만무
- 리액트
- 스택
- 백준
- 큐
- 사이드프로젝트
- Vue.js
- defee
- 크래프톤 정글
- 핀토스
Archives
- Today
- Total
미새문지
24.07.01 day15 코드트리 문제 풀기, 프로그래머스 문제 풀기, 시맨틱 마크업 본문
728x90
전화번호 목록
문제 설명
전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다.
전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다.
구조대 : 119
박준영 : 97 674 223
지영석 : 11 9552 4421
전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요.
제한 사항
phone_book의 길이는 1 이상 1,000,000 이하입니다.
각 전화번호의 길이는 1 이상 20 이하입니다.같은 전화번호가 중복해서 들어있지 않습니다.
입출력 예제
phone_book | return |
["119", "97674223", "1195524421"] | false |
["123","456","789"] | true |
["12","123","1235","567","88"] | false |
def solution(phone_book):
phone_book.sort()
for i in range(len(phone_book) - 1):
if phone_book[i] == phone_book[i + 1][:len(phone_book[i])]:
return False
return True
먼저 가장 가까운 값으로 비교하기 위해 오름차순 정렬을 해준다. 그리고 배열의 길이만큼 반복하면서 현재 i번째 인덱스 값과 다음 인덱스 값의 특정 위치까지 값을 비교하면서 같은 문자열이 있으면 .False를 바로 반환한다.
접두사가 없으면 반복문을 빠져나와 True를 반환한다.
시맨틱 마크업(Semantic Markup)
HTML 문서에서 태그를 사용할 때, 태그의 이름이 그 내용의 의미를 잘 나타내도록 하는 방법이다.
시맨틱 태그는 웹페이지의 구조와 내용을 보다 명확하게 표현하며, 검색 엔진 최적화(SEO), 접근성 향상, 유지보수의 용이성 등 다양한 장점을 가지고 있다.
주요 시맨틱 태그
<header>
- 문서나 섹션의 머리말 부분을 나타낼 때 사용
- ex) 로스트아크 같은 게임 홈페이지의 카테고리 부분
<header>
<h1>웹사이트 제목</h1>
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#about">About</a></li>
</ul>
</nav>
</header>
<nav>
- 네비게이션 링크를 포함하는 부분을 나타낼 때 사용
- ex) 포트폴리오의 링크 이동 부분
<nav>
<ul>
<li><a href="#home">Home</a></li>
<li><a href="#about">About</a></li>
</ul>
</nav>
<article>
- 독립적으로 구분될 수 있는 컨텐츠를 나타낼 때 사용
- ex) 네이버 웹툰의 웹툰 썸네일과 제목
<article>
<h2>기사 제목</h2>
<p>기사 내용이 여기에 들어갑니다.</p>
</article>
<section>
- 문서의 일반적인 섹션을 나타내며, 관련된 콘텐츠를 묶을 때 사용
- ex) 네이버 웹툰의 월요일 웹툰을 묶는 박스
<section>
<h2>섹션 제목</h2>
<p>섹션 내용이 여기에 들어갑니다.</p>
</section>
<aside>
- 본문 내용과는 별도로, 관련된 정보를 나타내는 콘텐츠를 포함할 때 사용
- ex) 네이버 웹툰의 웹툰 박스 옆에 있는 리모콘(사이드바)
<aside>
<h2>관련 기사</h2>
<p>관련된 추가 정보가 여기에 들어갑니다.</p>
</aside>
<footer>
- 문서나 섹션의 바닥글 부분을 나타낼 때 사용
- ex) 해당 회사의 연락 수단 및 회사의 위치를 보여주는 부분
<footer>
<p>© 2024 웹사이트 이름. 모든 권리 보유.</p>
</footer>
<main>
- 문서의 주요 콘텐츠를 나타낼 때 사용.
- 하나의 문서에는 하나의 <main> 태그만 사용할 수 있다.
- ex) 네이버 웹툰의 전체 웹툰을 묶는 박스
<main>
<h1>주요 콘텐츠 제목</h1>
<p>주요 콘텐츠가 여기에 들어갑니다.</p>
</main>
이러한 시맨틱 태그는 개발하는 입장에서 해당 코드가 어떤 부분인지 쉽게 알 수 있어 가독성이 좋아지기 때문에 개발 속도에 중요한 역할을 한다.
728x90
'개발 TIL' 카테고리의 다른 글
24.07.03 day17 코드트리 문제 풀기, vue.js 학습 시작 (0) | 2024.07.03 |
---|---|
24.07.02 day16 코드트리 문제 풀기, 프로그래머스 문제 풀기, position 속성 (0) | 2024.07.02 |
24.06.30 day14 코드트리 문제 풀기 (0) | 2024.06.30 |
24.06.29 day13 코드트리 문제 풀기, 프로그래머스 문제 풀기 (0) | 2024.06.29 |
24.06.28 day12 코드트리 문제 풀기, 이벤트 전파(Event Propagation) (0) | 2024.06.28 |