본문 바로가기

전체 글72

Bubble Sort(버블 정렬) 서로 인접한 두 원소를 검사하여 정렬하는 알고리즘 두 원소를 선택하여 비교하고 왼쪽이 오른쪽보다 크면 swap하며 바꾼다. 배열 내 전체 원소가 오름차순으로 정렬될 때까지 과정을 반복한다. # include # define MAX_SIZE 5 void bubble_sort(int list[], int n){ // 버블 정렬 int i, j, temp; for(i=n-1; i>0; i--){ // 0 ~ (i-1)까지 반복 for(j=0; j 2022. 6. 13.
[HTML & CSS] 명품 웹프로그래밍 3장 실습문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 버튼 버튼을 만들자 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 32 33 34 35 36 37 38 웹 브라우저 .section { width:50%; float:left; } /*.aside {width:50%; float:right;}*/ 웹 브라우저 소개 브라우저라고 불리기도 하는 웹브라우저(Web Browser)는, 사용자에게 웹 서버 컴퓨터에 접속하고 웹 페이지, 이미지, 동영상, 음악 등 다양한 데이터 다운받아 보여주는 소프트웨어이다. 그림1-2는 대표적인 Chrome 웹 브라우저를 보여준다. 그림 1-2 구글 Chrome .. 2020. 5. 1.
[HTML & CSS] 명품 웹프로그래밍 2장 실습문제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 산길 산길 오늘 아침 일찍 산에 올랐다. 아침 온도는 15°이었다. 가지고 간 물의 ½을 마셨다. 한참 올라 가는 도중에 약수터를 가리키는↰ 사인이 보였다. 불현듯 양두종 님의 산길이란 시에 곡을 붙인 바태준의 가곡♪이 생각이 났다. 산길을 간다. 말없이 호올로 산길을 간다 해는 져서 새로리 그치고 짐승의 발자취 그윽히 들리는 산길을 간다 말없이 밤에 홀로 산길을 간다 © Copyright(c) 황기태 All rights resrved. ☎ 010-0000-9999 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 도시 소개 도시 소개 California 맑고 화창한 날씨가 좋고 태평양의 아름다.. 2020. 4. 29.
[BOJ] 11399번 - ATM 분류는 그리디 알고리즘으로 되어있지만 단순 정렬 및 계산문제이다. 사람마다 돈을 인출하는데 걸리는 시간을 정렬한 뒤, n명의 사람을 1명씩 차등적으로 1회씩 줄이면서 시간을 더해주면 된다. 1번째 사람의 시간은 n번 2번째 사람의 시간은 n-1번 3번째 사람의 시간은 n-2번 n번째 사람의 시간은 1번 더하는 식으로 계산한다. 아래는 전체 코드이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #include #include using namespace std; int main() { int T; int time[1001]; int res = 0; cin >> T; for (int i = 0; i > time[i]; } sort(time, t.. 2020. 4. 26.
[BOJ] 1463번 - 1로 만들기 DP를 이용한 문제로 점화식을 찾는 것이 매우 중요하다. 코드에서 선언한 dp 배열의 index가 숫자를 뜻하고 배열의 값은 해당 index까지 도달하는데 최소 경우의 수를 의미한다. 문제에서의 조건을 점화식으로 나타내었을 때 1) 3로 나누어 떨어진다 : dp[i] = dp[i/3] + 1 2) 2로 나누어 떨어진다 : dp[i] = dp[i/2] + 1 3) 1을 뺀다 : dp[i] = dp[i-1] + 1 위 경우를 비교하여 최소값을 넣어주면 된다. #include #include using namespace std; int dp[1000001]; int main() { cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(false); int n; cin >>.. 2020. 4. 25.
[BOJ] 1541번 - 잃어버린 괄호 그리디 알고리즘 문제이지만 단순 문자열 처리라고도 볼 수 있다. 최소값을 얻기 위해서는 더해지는 숫자들을 괄호로 묶으면 된다. 아래는 전체 코드이다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 #include #include using namespace std; int main() { char sentence[51]; int num[25] = { 0, }; int len = 0, temp = 0, sum = 0; int res; int j = 0; cin >> sentence; len = strlen(sentence);.. 2020. 4. 21.
[BOJ] 17253번 - 삼삼한 수 2 기존에 풀었던 삼삼한 수 문제와 동일하다. 다만 문제 조건에서 입력값의 범위가 다르다는 것을 알아야 한다. int형으로는 입력값의 범위를 받을 수 없으므로 long long 자료형을 사용해야 한다. 항상 문제의 조건을 잘 살펴보도록 하자. 2020/04/19 - [BOJ 풀이] - [BOJ] 17252번 - 삼삼한 수 [BOJ] 17252번 - 삼삼한 수 단순 수학문제이다. 3의 거듭제곱들의 합으로 이루어져있는가라는 문장으로 보고 주어진 수를 3진법으로 바꿀 생각이 든다면 쉽게 해결 가능하다. 3진법으로 바꾸었을때 0이나 1이 아닌.. dong-min-god.tistory.com 문제 접근방식은 위 링크를 참고하면 된다. 아래는 전체 코드이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 .. 2020. 4. 19.
[BOJ] 17252번 - 삼삼한 수 단순 수학문제이다. 3의 거듭제곱들의 합으로 이루어져있는가라는 문장으로 보고 주어진 수를 3진법으로 바꿀 생각이 든다면 쉽게 해결 가능하다. 3진법으로 바꾸었을때 0이나 1이 아닌 2가 포함된 숫자가 나온다면 3의 거듭제곱의 합이 아니라는 뜻이다. 예를들어 1) 109의 경우 109 = 81 + 27 +1 이므로 11001 -> 삼삼한 수이다. 2) 298의 경우 298 = 243 +27 + 27 + 1 이므로 102001 -> 삼삼한 수가 아니다. 아래는 전체 코드이다. 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 32 33 34 #include int main() { int N; int three.. 2020. 4. 19.
[BOJ] 1931번 - 회의실 배정 그리디 알고리즘으로 푸는 문제였다. 이 문제에서 고려해야할 점은 크게 세가지가 있다. 1) 회의를 일찍 시작하는 순으로 고려해야 하는가 2) 회의시간이 짧은 순으로 고려해야 하는가 3) 회의가 일찍 끝나는 순으로 고려해야 하는가 1) 회의를 일찍 시작하는 순으로 고려해야 하는가 회의를 일찍 시작했지만 종료시간이 너무 늦는 경우 다른 빨리 끝나는 회의가 존재하는 경우 최대값을 구할 수 없어서 반례가 발생한다. 2) 회의시간이 짧은 순으로 고려해야 하는가 회의시간이 짧지만 그보다 회의시간이 긴 회의와 겹치게 되어 최대값을 못 구하는 경우가 있어 반례가 발생한다. 3) 회의가 일찍 끝나는 순으로 고려해야 하는가 일찍 끝남에 따라 다른 회의를 진행할 수 있으므로 이 경우를 선택했다. 아래는 전체 코드이다. 1 .. 2020. 4. 19.