본문 바로가기

전체 글240

[C++] 형식 지정자, 서식 지정자 %[플래그][폭][.정밀도][길이]서식지정자 예제 1 폭과 플래그를 함께 써보겠습니다. 다음과 같이 폭 앞에 0을 넣으면 남는 공간에는 공백 대신 0으로 채웁니다. printf("%06d\n", 20); // 출력 폭을 6칸으로 지정, 남는 공간은 0으로 채움 printf("%06d\n", 2000); // 출력 폭을 6칸으로 지정, 남는 공간은 0으로 채움 폭을 6칸, 남는 공간을 0으로 채우도록 했으므로 20 앞에는 0이 4개, 2000 앞에는 0이 2개 채워집니다. 폭을 6칸, 남는 공간을 0으로 채우도록 했으므로 20 앞에는 0이 4개, 2000 앞에는 0이 2개 채워집니다. 실행 결과 ↓ 0이 4개 채워짐 000020 002000 ↑ 0이 2개 채워짐 예제 2 실수를 출력하는 %f, %e는 정밀.. 2021. 1. 13.
[C++] cin, cout 시간 초과 문제 해결 std::ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); or ios_base :: sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); 위의 코드를 main() 안에 적어주면 된다. 0이든, NULL이든 같은 의미로 쓰인다. 하지만, 이 방법은 만능은 아니라고 하니 불가피한 경우에만 사용하고, 되도록 scanf, printf를 사용하자. algospot.com :: 자유게시판: 각 언어별 input method 비교 각 언어별 input method 비교 13개의 댓글이 있습니다. algospot.com cin 과 scanf 에 대해서 ACM-ICPC, Olympiad 문제 정리 및 알고리즘 공부에 대한 블로그.. 2020. 10. 16.
[BOJ] #12100 2048 시간 제한 메모리 제한 정답 비율 1 초 512 MB 23.670% 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 문제 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2보다 크거나 같고, 1024보다 작거나 같은 2의 제곱꼴이다. 블록은 적어도 하나 주어진다. 최대 5번 이동시켜서 얻을 수 있는 가장 큰 블록을 출력한다. 해.. 2020. 9. 18.
[Windows] Scroll Lock 단축키 문제 Dell 노트북을 사용중인데, 자주 Scroll Lock 옵션이 켜졌다며 연결했던 마우스가 설정대로 작동하지 못 하는 경우가 종종 발생했다. 다른 키보드를 연결에서 사용할 때는 바로 Scroll Lock 버튼이 있기 때문에 문제가 되지 않지만, 노트북 자체 키보드를 사용할 수 밖에 없을 때는 Scroll Lock 버튼이 따로 있지 않아서 고민이었는데 이번에 확실히 알게 되었다. 해결 해답은 아래 사이트에서 찾았다. 키보드에서 Scroll Lock 키가없는 Excel 2010에서 Scroll Lock을 전환하는 방법 qastack.kr 보통 문서를 작성하다가 중간중간 습관적으로 'Ctrl + s'를 누르는데 Scroll Lock 버튼 단축키가 'Fn + s' 여서 잘 못 눌리면 항상 Scroll Lo.. 2020. 9. 17.
[PlantUML] IntelliJ plugin 실행 오류 | Graphviz Window10 서론 인터넷에 검색해보면 Mac OS 환경에서 명령어 하나로 쉽게 Graphviz를 설치하는 것을 보고 미래에 나와 같은 오류를 맞닥뜨릴 어떤 사람을 위해 글을 작성한다. 본론 intelliJ에서 PlantUML integration 플러그인을 설치하고나면 시퀀스 다이어그램은 잘 나오기 때문에 아무 이상없이 잘 동작하는 것 처럼 보인다. 하지만, 시쿼스 다이어 그램이라든지 다른 다이어그램을 작성하려고만 하면 아래와 같은 에러메시지가 출력된다. Error message #1 Cannot find Graphviz, You should try @startuml testdot @emduml or java -jar plantuml.jar -testdot 이 경우에는 Graphviz를 설치하면 된다. Graphvi.. 2020. 9. 10.
[Java] ==, equals, instanceof == vs equals 기본형 비교 : == 객체 비교 : equals 자신(this)와 주어진 객체(obj)를 비교한다. 같으면 true, 다르면 false 기본적으로 주소값을 비교하므로 값을 비교하도록 오버라이딩을 해야한다. obj의 형변환 후 값 비교 기본형과 객체(참조형)에 대한 설명은 👉여기 참고! instanceof 연산자 참조변수 형변환 가능여부 확인에 사용. 형변환은 조상과 자손간의 변환에서만 가능. 참조변수를 변경함으로써 멤버변수의 갯수를 조절하기 위하여 형변환을 한다. (참조변수를 변경함으로써 인스턴스의 원래 기능을 모두 사용하기 위하여 형변환을 한다.) 예) Car에서는 자손타입의 메소드도 사용하기 위해서 FireEngine으로 형변환하고 FireEngine의 메소드를 호출할 수 있다.. 2020. 9. 9.
[Java] int 와 Integer 차이점 기본형 vs 참조형 기본형 : 오직 8개(boolean, char, byte, short, int, long, float, double) 실제 값을 저장 기본형 매개변수 - 값을 읽기만 할 수 있다. 참조형 : 기본형을 제외한 나머지(String, System 등) 메모리 주소를 저장 참조형 매개변수 - 읽고 변경할 수 있다. (주소를 전달 받으니까) 래퍼(wrapper) 클래스 기본형값을 감싸는 클래스. 8개의 기본형을 객체로 다뤄야할 때 사용하는 클래스. 👉 Boolean, Character, Byte, Short, Integer, Long, Float, Double Java는 90% 객체지향 언어로 모든것에 객체를 사용하는데 성능때문에 기본형이 필요했다. 주소를 가리킬 때 객체가 아닌 기본형이면 주.. 2020. 9. 8.
[Java] finalize 메소드 발단 c++을 주로 썼다보니 생성자, 소멸자에 대한 개념이 있었는데 이번에 학교 과제를 하게 되면서 Swing 애플리케이션을 작성하다가 애플리케이션이 꺼질 때 다른 객체도 종료하고 싶어서 Java 소멸자를 알아보았다. Java에는 소멸자 메소드는 따로 없고, 유사하게 작동하는 finalize가 있다고 한다. 하지만, 자바는 가비지 컬렉터(GC)가 힙 영역을 관리하고 있기 때문에 finalize 메소드를 쓰더라도 언제 동작할지 모르고(실행을 보장하지 않음) 사용자가 직접 작성하는 것도 위험하다는 의견이 있었다. 무엇보다도 Java9부터는 Object.finalize가 사라진다는 글을 보고 나서는 더 이상 사용하지 않는 메소드임을 알게 되었고, 찾아봤던 질문의 답변도 대부분 finalize()를 통한 방법이.. 2020. 9. 8.
[BOJ] #2143 두 배열의 합 시간 제한 메모리 제한 정답 비율 2 초 64MB 27.919 % 2143번: 두 배열의 합 첫째 줄에 T(-1,000,000,000 ≤ T ≤ 1,000,000,000)가 주어진다. 다음 줄에는 n(1 ≤ n ≤ 1,000)이 주어지고, 그 다음 줄에 n개의 정수로 A[1], …, A[n]이 주어진다. 다음 줄에는 m(1≤m≤1,000)이 주어지고, 그 다 www.acmicpc.net 문제 한 배열 A[1], A[2], …, A[n]에 대해서, 부 배열은 A[i], A[i+1], …, A[j-1], A[j] (단, 1 ≤ i ≤ j ≤ n)을 말한다. 이러한 부 배열의 합은 A[i]+…+A[j]를 의미한다. 각 원소가 정수인 두 배열 A[1], …, A[n]과 B[1], …, B[m]이 주어졌을 때, .. 2020. 8. 19.