알고리즘

데이터베이스

DATABASE STEP 31 - PL/SQL

★ PL/SQL Oracle's Procedural Language Extension to SQL ANSI-SQL 표준 SQL에 절차 지향 언어의 기능을 추가한 SQL ANSI-SQL + 자바같은 프로그래밍 언어의 기능 = PL/SQL ★ ANSI-SQL 비절차 지향 언어 순서가 없고 문장간의 행동이 서로 독립적이다. 문장 단위 구조 ★ 프로시저 메소드, 함수 등... 순서가 있는 명령어의 집합(ANSI-SQL + PL/SQL)의 집합 1. 익명 프로시저 - 1회용 코드 작성용 2. 실명 프로시저 저장(데이터베이스) > DB object 재사용 가능 계정간 공유 가능 PL/SQL 프로시저 블럭 구조 4개의 키워드(블럭)으로 구성 a. declare b. begin c. exception d. end a...

데이터베이스

DATABASE SEMI PROJECT - MOVIE RANK DATA

★ MOVIE RANK DATA https://movie.naver.com/movie/sdb/rank/rmovie.naver 랭킹 : 네이버 영화 영화, 영화인, 예매, 박스오피스 랭킹 정보 제공 movie.naver.com 현재 네이버 영화에 있는 순위 목록을 크롤링 하여, 1. 개념적 모델링 2. 논리적 모델링 3. 물리적 모델링 4. DDL 생성 5. DML 생성 6. SELECT 검증 순으로 진행하였다. ■ STEP 1. 데이터 크롤링 현재 랭킹에 있는 정보와 영화 상세 정보들을 크롤링 하여 excel에 종합하였다. 컬럼은 총 21 컬럼으로, 1위 ~ 50위에 위치하는 영화들을 가져왔다. 1. 순위 2. 제목 3. 개봉년도 4. 관람객 평점 5. 평론가 평점 6. 네티즌 평점 7. 개요 8. 장르..

데이터베이스

DATABASE STEP 22 - VIEW

★ 데이터베이스 객체 테이블 계정(hr) 제약사항 시퀀스 뷰 ★ 뷰(View) 데이터베이스 객체 중 하나 가상 테이블, 뷰 테이블 등... 테이블처럼 사용한다. 뷰는 SQL을 저장한 객체이다. 뷰는 호출될때마다 저장된 SQL이 실행된다. (실시간 가상 테이블) 사용 양식 create view 뷰명 as select문; create [or replace] view 뷰명 as select문; ★ 뷰의 역할(목적) 쿼리를 단순화한다. > 가독성 향상 보안 관리 쿼리 > 다른 사용자(hr 등)과 공유 ■ 사용 ex 1) create or replace view vwInsa -- tblInsa 테이블의 복사본 as select * from tblInsa; select * from vwInsa; -- tblInsa..

데이터베이스

DATABASE STEP 20 - RDBMS&Foreign key

★ 관계형 데이터베이스 시스템(RDBMS)이 지양하는 사항 테이블에 기본키가 없는 상태 > 데이터 조작 곤란 null이 많은 상태의 테이블 > 데이터 조작 곤란 + 공간 낭비 데이터가 중복되는 상태 > 데이터 조작 곤란 + 공간 낭비 하나의 속성값이 원자값이 아닌 상태 ■ 1. 테이블에 기본키가 없는 상태 > 데이터 조작 곤란(3번과 동일) create table tbltest ( name varchar2(30) not null, age number(3) not null, address varchar2(300) not null ); insert into tblTest (name, age, address) values ('홍길동', 20, '서울시'); insert into tblTest (name, ag..

백준 알고리즘

6. 심화 1 - 10 (25206번)

★ 문제 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치훈이의 전공평점을 계산해주는 프로그램을 작성해보자. 전공평점은 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값이다. 인하대학교 컴퓨터공학과의 등급에 따른 과목평점은 다음 표와 같다. P/F 과목의 경우 등급이 P또는 F로 표시되는데, 등급이 P인 과목은 계산에서 제외해야 한다. 과연 치훈이는 무사히 졸업할 수 있을까? 제한 1 ≤ 과목명의 길이 ≤ 50 과목명은 알파벳 대소문자 또는 숫자로만 이루어져 있으며, 띄어쓰기 없이 주어진다. 입력으로 주어지는 모든 과목명은 서로 다르다. 학점은 1.0,2.0..

백준 알고리즘

6. 심화 1 - 9 (1316번)

★ 문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오. 첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다. 단어는 알파벳 소문자로만 되어있고 중복되지 않으며, 길이는 최대 100이다. ★ 소스코드 import java.util.Scanner; public class Main { static Sc..

백준 알고리즘

6. 심화 1 - 8 (2941번)

★ 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다. 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다. 단어는 크로아티아 알파벳으로 이루어져 있다. 문제 설명의 표에 나와있는 알파벳은 변경된 형태로 입력된다. ★ 소스코드 import java.u..

백준 알고리즘

6. 심화 1 - 7 (4344번)

★ 문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. ★ 소스코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int[] arr; int testcase = in.nextInt(); for(int i = 0 ; i ..

IT의 큰손
'알고리즘' 태그의 글 목록 (4 Page)