본문 바로가기

전체 글

(94)
(JavaScript)개념 정리 준비과제를 하며 JavaScript를 복습했다. 간단하게 정리해보려 한다. JavaScript란? JavaScript는 웹 프로그래밍 언어로, 동적으로 웹 페이지를 만들고 사용자와 상호작용할 수 있도록 해 준다. HTML과 CSS와 함께 웹 페이지를 만들기 위한 필수적인 언어 중 하나이다. JavaScript는 이 두 언어를 보완하여 웹 페이지를 동적이고 상호작용적으로 만들어준다. JavaScript의 타입 JavaScript의 자료형은 Primitive Type과 Reference Type이 있다. Primitive Type은 기본 자료형으로 Primitive Type에 속하는 자료형은 다음과 같다. 1. Number : 정수, 실수를 가진다. 2. String : 문자나 문자열을 가진다. 큰따옴표와 ..
멋쟁이 사자처럼(명지대학교 자연) 11기 합격 항상 코딩을 혼자 해 왔다. 인터넷에 자료가 많기 때문에 공부하는 데에 어려움은 없었지만, 지난 학기에 팀 프로젝트를 하며 밤도 새 보고 결과물을 만들어 보니 함께 무언가를 만들어간다는 것이 얼마나 재미있는지 알게 되었다. 그래서 멋쟁이 사자처럼 동아리에 관심을 가지게 되었다.    DB와서버에 관심이 있던 터라 서버 파트에 지원했다. 지원할 때 자기소개 페이지(HTML, CSS만 사용)를 만들었어야 했는데, 기본적으로 HTML과 CSS는 할 줄 알아야 한다고 생각했기 때문에 당연하다는 마음가짐으로 준비해 지원했다.    자기소개서엔 지원동기와 올해의 목표, 노력해서 무언가를 달성한 경험, 웹 개발 경력 등이 있었다. 솔직히 백준이나 Java 공부는 나름 했다고 생각했지만, 웹 관련 공부는 학교 수업 들..
13414번: 수강신청(Java) 학번을 저장하면서 만약 이미 저장하고 있는 학번이라면(한번 더 클릭했다면) 삭제하고 다시 저장하면 순서의 맨 뒤로 저장된다. LinkedList를 써서 풀었더니 시간초과가 생겼다. 구글링을 해 보니 LinkedList의 add, remove 연산의 시간복잡도가 O(n)이라는 것이 원인이라는 결론이 나왔다. for문을 사용하며 입력을 받음과 동시에 add, remove를 하니 시간복잡도가 O(n^2) 이 되는 것이었다. 그래서 LinkedHashSet을 사용했다. 기존의 Set은 순서를 보장하지 않지만, LinkedHashSet은 순서를 보장하므로 클릭 순서에 따라 저장할 수 있다. 입력이 많으므로 BufferedReader를 사용했다. BufferedReader br = new BufferedReader..
1417번: 국회의원 선거(Java) 처음엔 int 배열을 사용해 푸려고 했었다. 하지만 Array.sort로 내림차순 정렬을 하기 위해선 Comparator.reverseOrder()을 사용해야 했기 때문에 int 배열 대신 Integer 배열을 사용해 풀기로 했다. 우선 다솜이는 기호 1번이기 떄문에 후보 수롤 입력받은 후 후보 수 - 1 만큼의 Integer 배열을 생성하고 다솜이의 득표수를 저장할 int 변수를 따로 만든다. 다음으로 후보들의 득표수를 입력받을 차례다. 우선 다솜이의 득표수를 따로 입력받은 후에 나머지 후보들의 득표 수를 입력받는다. Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); Integer[] list = new Integer[n-1]; ..
16165번: 걸그룹 마스터 준석이(Java) 익숙한 문제이다. HashMap을 써서 그룹명을 key로 가지고 멤버를 value로 가지게 한 후, 문제 유형에 따라 처리하면 된다. 우선 데이터를 입력받는다. Scanner scanner = new Scanner(System.in); int groupNum = scanner.nextInt(); int quizNum = scanner.nextInt(); HashMap glist = new HashMap(); String groupName, problem; int groupSize; for(int i = 0; i