728x90
n = int(input())
f = [[] for _ in range(100)]
for _ in range(n):
    p,lc,rc = map(ord,input().split())
    f[p].append(lc) 
    f[p].append(rc) 
def preorder(x):
    print(chr(x),end='')
    for next in f[x]:
        if next == 46:
            continue
        preorder(next)
def inorder(x):
    lc,rc = f[x]
    if lc != 46:
        inorder(lc)
    print(chr(x),end='')
    if rc != 46:
        inorder(rc)
def postorder(x):
    for next in f[x]:
        if next == 46:
            continue
        postorder(next)
    print(chr(x),end='')
preorder(65)
print()
inorder(65)
print()
postorder(65)
print()

ord, chr를 활용해 더럽게 풀어보았다.

728x90

'BOJ' 카테고리의 다른 글

<15989번> 1,2,3 더하기 4  (0) 2022.01.13
<11060번> 점프 점프  (0) 2022.01.13
<11048번> 이동하기  (0) 2022.01.13
<2580번> 스도쿠  (0) 2022.01.08
<16197번> 두 동전  (0) 2022.01.07
728x90

SQL

  • 비절차적 데이터 조작어

데이터 정의어

  • 테이블을 생성/변경/삭제 기능
    테이블 생성 : create
CREATE TABLE 테이블명 (
    속성이름 데이터타입 [NOT NULL] [DEFAULT 기본값] -> 테이블 구성 속성 이름, 데이터 타입, 기본 제약 사항 정의
    [PRIMARY KEY (속성1, 속성2, ...)] -> 기본키
    [UNIQUE (속성1, 속성2, 속성3,...)] -> 대체키
    [FOREIGN KEY (속성1,속성2) REFERENCES 테이블1(속성1,속성2)] -> 외래키
    [FOREIGN KEY (속성3) REFERENCES 테이블명(속성3)] 
    [ON DELETE 옵션] [ON UPDATE 옵션] -> NO ACTION, CASCADE, SET NULL, SET DEFAULT
    [CONSTRAINT 이름] [CHECK(조건)] -> 데이터 무결성을 위한 제약조건
);
  • 기본키 속성은 자동으로 NOT NULL. -> for 개체 무결성 제약조건
  • 데이터 타입
    • int,integer : 정수
    • smallint : int보다 작은 정수
    • char(n),character(n) : 길이가 n인 고정 길이 문자열
    • varchar(n), character varying(n) : 최대 길이 n인 가변 길이 문자열
    • float(n) : 길이가 n인 부동 소수점 실수
    • date : 연,월,일로 표현되는 날짜
    • time : 시,분,초fh 표현되는 시간
    • datetime : 날짜+시간
  • 참조 무결성 제약조건을 유지하기 위해서 외래키를 명시한다.
  • 데이터 무결성 제약조건 : check 키워드를 통해 지정할 수 있다.(ex : check(용량>=0 and 용량<=100)), constraint 키워드로 고유 이름 부여 가능

**[]은 생략 가능

  • 테이블 변경 : alter

  • -- 테이블에 새로운 속성 추가 alter table 테이블명 add 속성명 데이터타입 [not null] [default 기본값]; -- 기존 속성 삭제 alter table 테이블명 drop column 속성명; -- 제약조건 추가 alter table 테이블명 add constraint 제약조건명 제약조건내용; -- 기존 제약조건 삭제 alter table 테이블명 drop constraint 제약조건명;

  • 테이블 삭제 : drop

      drop table 테이블명;

    삭제할 테이블을 참조하는 테이블이 있는 경우 삭제가 수행되지 않으니, 해당 테이블을 참조하는 외래키 제약조건을 우선적으로 삭제한다.

데이터 조작어

  • 테이블에 데이터 삽입/수정/삭제/검색 기능

    -- 데이터 삽입
    insert into 테이블명 values(값1,값2,...);
    
    -- 데이터 검색
    select [all | distinct] 속성1,속성2 as "하이하이",... from 테이블1, 테이블2, ... [where 조건];

    select문의 결과에서 동일한 튜플이 중복으로 나올 수 있음에 유의하라.
    all : 중복허용(명시적으로 쓸 경우), distinct : 중복제거
    as "하이하이": 속성2 이름을 실제로 하이하이로 변경은 아니고 출력결과에만 보여줌
    where 조건에 들어가는 연산자

    - = : 같다.

데이터 제어어

  • 데이터 접근/사용 권한을 부여/취소
  • 보안을 위해서 사용자별로 다르게 부여 가능
  • DBA가 주로 사용
728x90

'전공필기' 카테고리의 다른 글

MTBF, MTTR, MTTF 그리고 가용성  (0) 2023.07.27
728x90

서울42 활동을 중단하고 꽤 오래 끄적여봅니다.

라피신 후기를 더 쓰고 싶은데 지금쓰려니 까먹었네요!

2021.12.01 - [42seoul] - <42 SEOUL> review(1)

 

<42 SEOUL> review(1)

몇 년 전에 우리나라에서 첫 기수를 선발한다고 했을 때 재밌겠다고 생각만 하고 막상 신청하기에는 시행착오도 많을 것 같고 불안정해 보여서 신청하지 않았었다. 그리고 나서 까맣게 잊고 있

resource777.tistory.com

2021.12.05 - [42seoul] - <42seoul> review(2) 체크인 미팅과 라피신 신청 꿀팁

 

<42seoul> review(2) 체크인 미팅과 라피신 신청 꿀팁

신청하는 창을 여러 개 띄워두고 시간에 맞춰서 새로고침을 하나씩 눌러준다. 그중에 신청할 수 있는 화면이 뜬다면 해당 페이지에서 등록버튼을 눌러주면 된다. 대학교 수강신청은 여러 화면

resource777.tistory.com

2021.12.10 - [42seoul] - <42seoul> review(3) 라피신 1주차

 

<42seoul> review(3) 라피신 1주차

온라인 테스트, 체크인 미팅 신청 그리고 라피신 신청을 무사히 통과해서 피시너가 되었다. 체크인 미팅이나 라피신을 신청할 때 도움 되는 정보는 아래 글에 간략하게 적혀있으니 참고하면 된

resource777.tistory.com

2021.12.14 - [42seoul] - <42seoul> review(4) 라피신 2주차

 

<42seoul> review(4) 라피신 2주차

2021.12.10 - [42seoul] - review(3) 라피신 1주차 review(3) 라피신 1주차 온라인 테스트, 체크인 미팅 신청 그리고 라피신 신청을 무사히 통과해서 피시너가 되었다. 체크인 미팅이나 라피신을 신청할 때 도

resource777.tistory.com

이전 링크를 올려두었으니 참고하실 분은 참고하시길 바랍니다

 

------- 찐 후기--------

본과정을 마친 것이 아니라 중간에 그만두고 나온 것이라 별로 드릴 말씀은 없지만 많은 것을 배울 수 있는 장소였습니다.

이곳은 스스로 성장할 수 있는 장소예요. 전공에서 하지 않았던 부분까지 꼼꼼하게 공부할 수 있기 때문이죠.

좋은 친구들도 만들 수 있고 다양한 전공/환경의 사람들을 만날 수 있어서 지금까지도 연락하고 스터디하면서 지내고 있습니다.

 

하지만 너무 42서울에만 올인하지는 마시고, 다른 활동들도 참여하면서 시야를 넓히는 것이 좋다고 생각합니다.(C언어만 하다가 시간 다 갈지도 몰라요)

이후에 다른 대외활동에도 참가하면서 느끼는 점은 코딩 잘하는 사람은 정말 많고 스스로 부족한게 많기에 더욱 더 배울려고 해야한다는 점이예요.

정말 잘하는 사람 많습니다. 그래서 스스로 경쟁력을 만들어야한다고 생각합니다.

 

앞으로도 42서울 관련해서 생각나는게 있으면 기록하겠지만, 본격적으로 취준을 하면서 다른 글들도 끄적끄적 하겠습니다.

728x90

+ Recent posts