728x90

공부 39

백준 알고리즘 - 브론즈5 #14681(Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #14681번 "사분면 고르기" 입니다. 수학시간에 나오는 x와 y좌표를 통해 사분면중 어느 분면에 위치하였는지를 출력하는 문제입니다 x가 0보다 크거나 작은 경우, y가 0보다 크거나 작은 경우를 조합하여 4가지 조건을 만들면 됩니다 if 조건문에 and를 통해 두가지 조건이 동시에 일어날 경우, 실행되게 됩니다. 다행히 문제에서는 0일 경우를 제외하였기에, 오류가 나올 일은 없습니다 좋은 하루 되세요~

백준 알고리즘 - 브론즈5 #2753(Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #2753번 "윤년" 입니다 연도를 입력 받고, 조건식을 활용하여 윤년인지 아닌지를 1 또는 0으로 출력하는 문제입니다 윤년이 단순히 4년에 한번이었다면, 3행의 조건으로 문제는 해결이 되었을 것입니다 하지만 100의 배수일때는 아닙니다. 그중 400의 배수는 맞습니다. 400은 100의 배수이지만 윤년이기에, 조건식의 순서를 잘 정해서, 400의 배수가 아닌 100의 배수만 구분해야 합니다 3행에서 4의 배수를 구분합니다. 1차로 4의 배수가 아니면 0을 출력합니다 이후 if문을 통해 400의 배수는 1을 출력 합니다 그리고 elif문을 통해 100의 배수는 0을 출력 합니다. 이때 앞에서 400의 배수는 걸러졌기에, 400의 배수를 제외한 4의 배수만 ..

백준 알고리즘 - 브론즈5 #1330, 9498(Python)

안녕하세요 백준 알고리즘 문제풀이입니다. 브론즈5 #1330번 "두 수 비교하기" 입니다 두개의 값을 입력 받아 비교 후 부등호를 출력 하면 됩니다 값을 같이 출력하는게 아니라 부등호만 하면되기에, >(크다), B: 를 통해 만약 A가 B보다 크다면 이라는 조건을 만족하면, 아래 내용이 진행됩니다. 파이썬은 tab으로 들어간 줄이 윗줄에 속하게 되는데요. 직관적으로 볼수 있고, 다른 부호를 사용하지 않아 오류가 적어진다는 장점이 있습니다. if에 해당하지 않는다면, elif를 통해 확인하고, 여기도 해당하지 않으면 else의 내용을 진행합니다 요렇게 작성하면 "맞았습니다" 를 받을수 있습니다 브론즈5 #9498번 "시험 성적" 입니다 앞에서 풀이한 두수 비교하기와 동일한 유형의 문제입니다 if, elif..

백준 알고리즘 - 브론즈5 #10171, 10172(Python)

안녕하세요 백준 알고리즘 문제풀이입니다. 브론즈5 #10171번 "고양이" 입니다 입력값이 없고, 출력만 위치에 맞게 하면 됩니다 부호를 이용해서 출력해 주시면 되고, 중간에 스페이스가 몆개인지 세기 힘드시면, 그림을 한줄씩 복사하여 print("")에 넣으면 됩니다. 단 주의할 점은, \(백슬래시)를 출력하기 위해서는 앞에 \를 하나더 붙여주어야 합니다. 다른 이스케이프 문자를 할때도 동일하게 적용됩니다. (\n, \t 등) \이 없으면 줄바꿈처럼 정의된 출력방식으로 처리가 됩니다. 음... 지금보니 제출한 정답에 \가 다 붙어있지 않네요... 처음에 나오는 \는 상관이 없는 것인지, 확인해 봐야겠어요 위의 코드가 제가 맞은 답이고, 아래가 정석대로 \앞에 \을 붙여 출력되게 한 코드입니다 동일하게 p..

백준 알고리즘 - 브론즈3 #2588(Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈3 #2588번 "곱셈" 입니다 브론즈3 등급이네요. 브론즈5에서 살짝 난이도가 올라갔습니다 이전 곱셉 문제에서 단순 결과만 보였다면, 이번에는 과정이 함께 보여야 합니다 하지만, 컴퓨터가 사람과 같은 과정으로 풀이를 하지 않기에 실제로 과정 하나하나가 별개로 작성이 되어야 합니다 두개의 값을 변수에 저장한 후 두번째 변수를 단위별로 나누어 줍니다 그래서 과정부분에 해당하는 3줄은 3자리수 곱하기 1자리수의 형태가 되게 합니다 10자리와 100자리를 1자리로 만들기 위해, //과 %를 활용하였습니다 //100을 통해 100자리 수를 가져 오고, 10자리의 경우 앞에 100자리를 없애야 하기에 %100을 먼저하여 나머지에서 //10을 해줍니다 %10을 하면 나머..

백준 알고리즘 - 브론즈5 #10430(Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #10430번 "나머지" 입니다 분배법칙을 적용하였을때 결과가 같은지 확인하는 프로그램을 만들어야 합니다 친절하게 필요한 공식들은 문제에 다 나왔있습니다. A, B, C에 해당하는 값만 받아와서 수식에 넣어 결과를 출력하면 됩니다 텍스트로 받아온 후 int()로 변환했는데, map()으로 한 번에 받아오면서 int()로 변환해서 저장하면 1~6까지 있는 내용을 한문장에 만들수 있습니다 이후 print()에서 문제에 있는 공식을 그대로 넣어주면, 결과값이 출력 됩니다 좋은 하루 되세요~

백준 알고리즘 - 브론즈5 #18108 (Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #18108번 "1998년생인 내가 태국에서는 2541년생?!" 입니다 이제 문제 내용이 좀 많아지기 시작했네요. 문제를 읽고 입력과 출력의 관계를 생각해 보아야합니다 위에 나오는 2541과 1998을 통해 태국에서 사용하는 불기와 우리가 사용하는 서기의 년도 차이를 확인 가능한데요. 차이가 543년이 되고, 그 차이를 이용해 태국의 년도가 입력되면 서기가 출력 되게 하면 됩니다 다시 보니 역시나 길게 썼네요...ㅎㅎ int() 안에 input()을 넣어줌으로써 한문장으로 만들수 있고, 출력값을 따로 저장하지 않고 바로 print()안에서 계산하게 하여 문장을 줄일수 있습니다. 4줄이 2줄로 간단히 바뀌었네요 좋은 하루 되세요~~

백준 알고리즘 - 브론즈5 #10926 (Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #10926번 ??! 입니다 사칙연산이 끝나고 다시 문장 출력이 나왔네요 입력값에 "??!"를 추가해 주면 됩니다 변수에 값을 받았다면 +를 이용해 문장을 연결할수 있습니다 변수에 "??!"를 추가하여 변수 + 변수의 형태도 가능하고 바로 변수 + "??!"로도 가능합니다 cid에 저장하여 print()에서 사용하였는데 cid없이 바로 출력을 하여도 됩니다 역시 이전 코드를 돌아보니, 줄일수 있는 부분들이 계속 보이네요 좋은 하루 되세요

백준 알고리즘 - 브론즈5 #10869 (Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #10869번 사칙연산입니다 앞에 나왔던 4가지 연산을 이번에는 한번 에 출력을 해줘야 하는데, 다른 부분이 있습니다 바로 나누기를 몫과 나머지로 구분해줘야 합니다 나누기는 / 를 사용해서 계산했었는데, 몫과 나머지는 아래와 같이 표기 가능합니다 몫 // 나머지 % 두개의 수 사이에 기호를 넣어주면 되는데 저는 처음에 나머지를 구할때 % 와 &를 헷갈려서 잘못쓰는 일이 종종 있었습니다. 문제 풀이는 값을 가져오는 부분은 지난번과 동일하게 하면 되고, 출력문을 1개가 아닌 5개로 늘려줍니다 입력부분을 줄이면 이렇게 표기도 가능합니다 브론즈5 레벨에서는 이런 단순 계산 또는 문구 출력 문제들이 많이 나오는데 여기서 연습을 하고 다음 단계로 가면 좋을듯 하네요 ..

백준 알고리즘 - 브론즈5 #1001, 10998, 1008 (Python)

안녕하세요 백준 알고리즘 문제풀이입니다. 초반에 사칙연산이 나오는데 풀이가 비슷한 관계로 함께 올립니다 브론즈5 #1001번 A-B 입니다. 어제 풀이한 #1000번과 99프로 동일합니다. 덧셈이 뺄셈으로 변경되었을 뿐입니다. 당연히, 변수에 값을 저장하는 방법은 동일하고, 출력시 부호면 + 대신 - 를 사용하면됩니다 1000번과 동일하게 2달전에 길게 작성하였는데, 2줄로 간단히 작성 가능합니다 브론즈5 #10998번 AxB 입니다. 두개의 값을 받고, 곱셈의 결과를 출력하면 됩니다 역시나 코드를 길게 작성했네요... 부호만 변경해서 쓰고... 두줄로 간단히 작성하면 이렇게 됩니다 브론즈5 #1008번 A/B 입니다. 이번에는 나눗셈입니다. 다행히 소숫점 몇번째까지 출력하라는 내용은 없네요 앞에 사용한..

백준 알고리즘 - 브론즈5 #1000 (Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #1000번 A+B 입니다 이제 단순 출력문이 아닌 입력갑을 받고, 결과를 출력하는 문제가 나오네요 앞으로 대다수의 문제가 이렇게 입력값을 받고 맞는 결과를 출력하는 형식으로 되어있습니다 (제가 푼 문제들은 그러네요. 더 높은 단계는 어떻게 나오려나??) 풀이입니다만....지금 보니 민망하네요... 바로 입력 받아서, 결과를 프린트할수 있는데... 처음 작성 당시는 좀 길게 썼네요 이렇게 2줄만으로도 동일한 결과를 가져올수 있습니다. input()을 이용해 입력값을 받아오고, map()을 통해 2개에 변수에 나눠서 저장해 줍니다 나누는 기준은 split()을 이용합니다. int()를 이용해 문자가 아닌 정수값으로 저장하게 됩니다 지난번 문자열을 출력할때는 ..

728x90
반응형