전체 글 47

알고리즘_백준_1157_단어 공부 Using_By(Java)

https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 이 문제는 주어진 input에 대해서 가장 많이 쓰인 알파벳을 대문자로 출력하는 것이다. 방법 1. 대문자로 출력의 문제이기에 편리를 위해 입력값도 모두 대문자로 변환(String.toUpperCase() : 모두 대문자로 변경) 2. 알파벳은 'A~Z'는 총 26개이다. 26크기의 배열 2개 선언 하나는 중복됫는지 확인을 위함, 하나는 가장 큰 문자의 위치를 파악하기 위함 3. 입력 문자열 길이만큼 반복문 수행 4. 배열 하나를..

알고리즘_백준_1152_단어의 개수 Using_By(Java)

https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 설명, input, output은 아래와 같다. 이 문제의 중요한 점은 한 줄을 읽어와서 띄어쓰기로 나눠져 잇는 단어를 세는 것이다. 문제 해결 방법 1. Scanner을 이용해서 nextLine으로 한줄을 읽고 앞뒤 trim을 통해서 앞뒤 공백을 없앤다. 2. if문을통해서 공백인 곳과 공백이 아닌것을 나눈다. 3. 공백이 아닌 곳에 split(" ")을 통해서 띄어쓰기로 단어를 나누고 그..

알고리즘_백준_1002 Using_By(Java)

https://www.acmicpc.net/problem/1008 1008번: A/B 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 이번 문제는 한줄을 입력받아서 숫자 두개 변수를 잘 설정해야 하는 문제이다. 이전 문제와 같이 int로 받아오면 나머지 소수점을 알수 없다. example input(1 3) example output(0.333333333333333333) output 결과를 보고 알 수 있는 점이 int, float 모두 안되고 double 변수를 가져야 함을 알 수 있다. 해결 코드는 아래와 같다. import java.util.Scanner; public class Backjoon_1002 { public static void..

알고리즘_백준_1000 Using_By(Java)

https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 이제 부터 알고리즘을 자바로 풀기로 다짐해서 자바 기초부터 할 예정이다. 이 문제는 첫 줄에 A와 B가 주어졌을 때 A + B를 계산해주면 되는 문제이다. example input (1 2) example output(3) A, B 를 입력으로 받고 A + B를 더해서 출력하면 된다. 이때 배운점은 입력받기 위해서 java.util.Scanner이라는 것을 사용해야 한다는 것을 배웠다. 해결 코드는 아래와 같다. import java.util.Scanner; public class Backjoon_1000 { pub..

하둡 이론

병렬 분산 알고리즘 사용이유 Scale-out 아주 많은 값싼 서버를 이용 Scale-up 적은 수의 값비싼 서버를 이용 데이터 중심 어플리케이션 분야에서는 아주 많은 값싼 서버를 많이 이용한다. 고가의 서버들은 가격에 관점에서는 선형으로 성능이 증가하지 않기 때문에 값싼 서버 여러개가 가격측면에서 좋다. 맵리듀스 프레임워크 데이터 중심 프로세싱 한대의 컴퓨터 능력으로 처리가 어렵다 수천대의 커뮤터를 묶어 처리해야한다 맵리듀스 프레임워크가 하는 것이 위 처리이다. 맵리듀스는 빅데이터를 이용한 효율적인 계산이 가능한 첫 번째 프로그래밍 모델 기존에 존재하는 여러 가지 다른 병렬 컴퓨팅 방법에서는 프로그래먹 낮은 레벨의 시스템 세부 내용까지 아주 잘 알고 많은 시간을 쏟아야만 함 빅데이터를 이용하는 응용분야..