분류 전체보기
-
백준 2562번 최댓값 문제 ( C++ )Problem Solving/C++ 2019. 7. 16. 10:08
2562번: 최댓값 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. www.acmicpc.net 5단계 정도오니 문제 난이도가 엄청 높아진 건 아니지만 내 부족함 덕에 시간이 오래 걸리기 시작했다. 그래서 아예 반성 & 오답노트 카테고리를 새로 팜 아무튼 그래서 오답을 기록하면서 반성을 해보자면 이 문제의 경우 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include int main(void) {..
-
C++ 최소값과 최대값을 구하는 함수Knowledge/C++ 2019. 7. 16. 09:41
BOJ 10818번 문제 ( https://www.acmicpc.net/problem/10818 ) 를 풀며 알게된 것 한번 삽질은 했지만 문제는 쉽게 풀었다. 이 포스팅거리는 그 이후 다른 분들의 코드를 보다가 얻은 건데 나는 둘 중 작은 수와 큰 수를 구하는 부분을 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 #include int main(void) { int n, input, min, max; //배열크기,입력값,최소값,최대값 scanf("%d",&n); int arr[n]; // n만큼 배열 생성 for(int i=0; i
-
백준 단계별 문제풀기 4단계 클리어!Problem Solving/Know-how 2019. 7. 11. 10:22
3문제 밖에 없었지만 2,3단계 합친 것보다 클리어타임이 더 오래 걸렸다 어떤 것들에서 왜 오래 걸렸고 뭘 얻었는지 정리하자면 1. 10951번 - A+B - 4 ( https://www.acmicpc.net/problem/10951 ) 문제 - 지연 사유 C++에서 EOF처리를 어떻게 하는지 ( 사실 EOF라는 단어를 이번에 처음 알았다 ) 그러니까 JAVA의 hasNext()와 같은 처리를 어떻게 하는지 공부하느라 시간이 걸렸다 - 얻은 것 C++ EOF 처리 방법 ( 백준 10951 A+B - 4 ) https://takeknowledge.tistory.com/20 2. 1110 - 더하기 사이클 ( https://www.acmicpc.net/problem/1110 ) 문제 - 지연 사유 문제를 대..
-
C++ EOF 처리 방법 ( 백준 10951 A+B - 4 )Knowledge/C++ 2019. 7. 11. 10:12
백준 10951번 문제 - A+B - 4 ( https://www.acmicpc.net/problem/10951 )를 풀면서 알게 된 것 이 문제는 입력의 마지막 조건이 어떤건지를 알려주지 않아서 JAVA의 hasNext()와 같은 게 C++에서는 무엇인지 알아야 했습니다 생각보다 방법이 다양했는데 케이스별로 간단히 정리해서 포스팅해봅니다. 1. scanf()가 입력받은 인자의 갯수를 리턴하는 특성을 활용하는 방법 1 2 3 4 5 6 7 8 9 10 11 #include int main() { int a, b; while (scanf("%d%d", &a, &b) == 2) // scanf는 입력받은 갯수를 리턴한다 // 만약에 scanf("%d",&a); 에서 입력이 제대로 들어왔다면 1이 리턴된다. ..
-
백준 1110번 더하기 사이클 문제 ( C++ )Problem Solving/C++ 2019. 7. 10. 17:59
1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = www.acmicpc.net 푸는데 시간이 좀 걸렸다. 다 풀고 보니 문제를 꼼꼼히 읽지 않아서 헤맨 거였음.. 반성의 의미로 포스팅! 우리 모두 요구 사항을 꼼꼼히 읽읍시다~ 1 2 3 4 5 6 7 8 9 10 11 12 ..
-
백준 단계별 문제풀기 2,3단계 클리어Problem Solving/Know-how 2019. 7. 8. 17:51
if문이나 for문은 자바와 큰 차이가 없어서 금방 풀었다. 물론 숏코딩의 높은 순위 코드들을 보면 나와는 달리, 신기하게 푼 코드들이 많이 보였지만 나는 퇴직과 동시에 높은 단계를 공부할 준비를 해놓는 게 당장의 목표이니 그런건 사뿐히 패스. 그래도 무언가를 남겨보자면 1. if 문 - 두 수 비교하기 ( https://www.acmicpc.net/problem/1330 ) 문제 - 지연 사유 사실 지연은 아니고 , 문제를 풀고 다른 분들 풀이를 보니 printf()가 아닌 puts() 함수를 사용해 문자열을 출력해놓으셨길래 간단히 찾아보고 정리했다 - 얻은 것 문자열을 출력하고 줄을 바꿔주는 puts() 함수 https://takeknowledge.tistory.com/17 다행히 포스팅할 게 이것 ..
-
문자열을 출력하고 줄을 바꿔주는 puts() 함수Knowledge/C++ 2019. 7. 8. 17:43
BOJ 1330번 문제 두수 비교하기 ( https://www.acmicpc.net/problem/1330 ) 를 풀면서 알게 된 것! C++에서 문자열을 출력할 때는 C의 유산인 puts() 함수를 사용할 수도 있다. 간단히 코드로 보자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include // scanf(), printf()와 같이 puts() 함수를 쓸 때도 stdio.h를 include 해줘야 한다. int main(void) { printf("문자열을 출력하고 줄을 바꿔 줘야 할 때 \n"); puts("printf 함수가 아닌 puts함수를 사용하면"); printf("\\n을 쓰지 않아도 자동으로 줄이 바뀐다"); /* 문자열을 출력하고 줄을 ..
-
백준 단계별 문제풀기 1단계 클리어Problem Solving/Know-how 2019. 7. 7. 20:57
사실 '입출력과 사칙연산' 단계인 만큼 1단계에 굳이 포스팅을 할 만한 수준의 문제는 없다. 자바로 풀었다면 12문제 푸는데 5분 컷 가능. 그러나 생전 처음 접하는 C++로 풀려다 보니 시간이 좀 걸렸다. 그래서 시간이 걸린 문제들 목록, 지연 사유와 함께 그 과정에서 공부한 것들을 포스팅한 링크를 더해 1단계를 클리어한 기록을 남긴다. 서른 되며 느낀건데 별 거 아닌 것 같아도 이렇게 조그마한 성과를 매일 매일 눈에 보이게 쌓아나가는 게 중요한 거 같더라고. 이 덕에 누군가의 응원을 받게 된다면 더할 나위 없을 것 같고 (추천과 댓글을 남겨 달라는 말입니다 여러분! ㅋㅋㅋ) 아무튼 이제 2단계 가즈아! 1. 2557번 문제 ( Hello World ) : https://www.acmicpc.net/p..