본문 바로가기

반응형

전체 글

1924번 난이도는 그렇게 높지 않은 문제였다.다만 예전에는 배열에 저런식으로 값을 넣지 않고 if문을 여러개 써서 풀던 나였다면 이젠 조금 바뀌었다. 하지만 문제 풀때, 1월부터 12월까지 날짜를 제대로 안읽고 7,8월이 31이라는 점을 잊고 맘대로 풀다가 실수했다.문제를 잘 읽는 습관, 정확하지 않은 배경지식을 사용하려 한 습관을 버려야 겠다. 코드 1234567891011121314151617181920212223242526272829#include#includeusing namespace std;int month[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };string day[7] = { "SUN","MON","TUE","WED","THU","FRI","SAT" };.. 더보기
11718번 문자열 입력에 대해서 막상 문제를 풀려고 하니 어떻게 풀어야 할지 막막했다.그냥 BOJ 나 Codeground 문제들만 풀다보니 숫자나 char 형에 대해서만조금 풀어보고 이렇게 긴 문자열을 다루는 방법에 대해서는 잘 알지 못하여서 구글링을 하며 문제를 풀었다. cin을 사용할 때의 문제점 1. 버퍼 오버플로우 변수의 배열의 크기를 넘어가는 문자열을 입력받게 되면, 문제가 발생하는 것 2. cin은 공백 처리를 제대로 하지 못한다. 아래 코드에서 입력으로 123 321 을 입력한다면 출력으로는 123 밖에 출력되지 않는다. 1234567891011#includeusing namespace std; int main(){ int a; cin >> a; cout 더보기
10952번 기초부터 내가 아주 잘못되어 있으면서다른 문제를 풀려고 했었다는걸 가장 간단한 입출력 문제를 풀면서 느낀다. 누군가는 그냥 똑같고 쉬운 코드 같은데 왜 올리겠냐고 하지만다시 풀었을 때, 스스로 조금씩 변화하고 있는, 작은 코드라도 조금씩 나아지는 모습을 남기기 위해. 저런식으로 while 조건문에 입력하는 것은 물론 여러가지 조건식을 쓸 수 있다는 사실... 캐치! 예전에 BOJ 처음 들었을 때 풀었던 코드123456789101112131415#includeusing namespace std; int main(){ int A, B; while (cin >> A >> B) { if (A == 0 && B == 0) break; cout b && a!=0 && b!=0) { cout 더보기
10951번 기초부터 시작하려는데while문 안에 저렇게 입력하는 방식 조차 모르고 있었다... 12345678910111213#includeusing namespace std; int main(){ int A, B; while (cin >> A >> B) { cout 더보기
6.8 문제: 시계 맞추기 (문제 ID: CLOCKSYNC, 난이도: 중) ★★★★★다시 풀어볼 문제★★★★★ 알고리즘 문제해결 전략 1권6.8 문제: 시계 맞추기 (문제 ID: CLOCKSYNC, 난이도: 중) 문제를 제대로 읽지 못해서 풀지 못한 케이스.처음에는 단순히 0번 부터 9번까지 스위치를 킬것인지 말것인지 로 풀었다가다시 읽어서 여러번 스위치를 켤 수 있지만 10번만 누르는 것인 줄 스스로 착각한 문제.그러다보니 기저 조건 등을 틀리게 작성해버렸다. 그리고 다시 짤때도 스위치를 누르지 않는다/ 스위치를 1~3번 누른다로 나누어서 생각하는 바람에한참을 고민했었다. 하지만 스위치를 0~3번 누른다로 생각을 바꿔서 푸니까 쉽게 풀렸다. 문제를 잘 읽는게 정말 중요하다는 것을 느꼈다. 시간 초과 코드 1234567891011121314151617181920212223242.. 더보기
6.5 문제: 게임판 덮기 (문제 ID: BOARDCOVER, 난이도: 하) ★★★★★다시 풀어볼 문제★★★★★ 알고리즘 문제해결전략 1권6.5 문제: 게임판 덮기 (문제 ID: BOARDCOVER, 난이도: 하) 완전탐색 문제 첫번째 코드는 시간상 오류가 나는 코드이다.내가 보기에 슈퍼컴퓨터라면 정답은 나올 것 같다;;나름 중복되는 경우의 수를 지우기 위해 재귀함수의 for문을 건드렸지만, 아주 미세한 차이만을 나타냈을 뿐이었다.일단 나름 책에서의 첫문제를 적용해서 풀려고 노력은 했다는 점은 만족한다. 정답 코드는 일단 for문에서 경우의 수를 줄이려고 한 것이 아니라는 점이 좋았다.나 같은 경우에는 항상 for문을 복잡하게 만들어서 경우의 수를 줄이려고 하는 습관이 있었는데 그것을 깰 수 있었다.내가 실수한 점은 진짜 무식하게 모든 경우를 돌려서 블록을 맞추려고 했던 점이고,.. 더보기
6.3 문제 : 소풍 ( 문제 ID: PICNIC , 난이도: 하) ★★★★★다시 풀어볼 문제★★★★★ 알고리즘 문제 해결 전략 1권6.3 문제 : 소풍 ( 문제 ID: PICNIC , 난이도: 하) 완전탐색 문제를 재귀로 구현. 이번에 내가 치뤘던 삼성 소프트웨어 역량 평가 1번 문제랑 흡사한 듯 보인다.내가 그 문제를 못 풀었던 것 처럼 이 문제도 풀지 못했다. 다시 한번 그 문제를 풀어봐야 겠다. 생각보다 그렇게 복잡하게 생각하지 않아도 되는 문제.단 주의할 점은 중복하는 경우의 수를 계산하는 방식.난이도가 하라고 표기되어 있지만 나한테는 어려웠던 문제. 이 문제를 통해서 bool 타입 변수를 어떤 이름으로 선언해야 효과적인지 배울 수 있었다.그 동안 bool 타입을 선언하고 조건문 안에서 이게 언제 true일까 false 일까 하는 고민으로 낭비되는 시간을 좀 줄.. 더보기
시작 요즘들어 자꾸 잊는다. 매순간이 기회다. 오늘 그 첫 걸음 시작. 더보기

반응형