728x90

파이썬 31

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

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈3 #2884번 "알람 시계" 입니다. 알람시계를 맞추는 문제입니다 입력 값에서 45분을 뺀 값을 출력하면 됩니다 1행에서 시와 분의 값을 받아옵니다 45분을 빼야하기에, 분이 45이상이면 시간을 수정할 필요없이 분만 계산하면됩니다 if 를 통해 45보다 크거나 같으면 분에서 45분을 뺴고 출력합니다 하지만 분이 45미만이면 시간을 1 줄이고 분에 60분을 더하여야 45분을 뺄수 있습니다 이때는 시간이 1시간 이상일 경우에는 시간에서 1을 빼면 됩니다 또다른 경우는 시간이 0일 경우인데, 이때는 전날의 의미가 되어 23시가 되게 됩니다 좋은 하루 되세요~~

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

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈5 #3003번 "킹, 퀸, 룩, 비숍, 나이트, 폰" 입니다. 체스에 필요한 피스의 수를 확인하는 문제입니다 현재 있는 수가 입력으로 들어오면, 게임에 필요한 수에서 빼서 나오는 값을 출력하면 됩니다 음.... 지금 보니 좀 많이 썼네요.... a로 입력을 받고, b로 split()하여 넣고, c로 b값을 int()해서 받았네요... 1, 2, 8, 9번줄은 c = list(map(int, input().split()))으로 줄일수 있습니다 그리고 필요한 체스 넘버를 num_chess에 넣어놓고, num_chess에서 c값을 뺀 값을 dif_chess에 저장한 후 출력하였습니다 이것도 for문을 돌때 바로 빼고 출력하면 더 간단히 할수 있습니다. 오늘도 2달..

백준 알고리즘 - 브론즈4 #2480(Python)

안녕하세요 백준 알고리즘 문제풀이입니다 브론즈4 #2480번 "주사위 세개" 입니다. 주사위를 던저 같은 수가 나오면 상금을 많이 받게 됩니다 3개가 나올 경우 상금 2개가 나올 경우 상금 모두 다를 경우 상금 3가지 경우로 구분을 해주면됩니다 처음에 3가지가 동일한 경우, a == b and b == c를 하고 두번째에 elif를 통해 a == b or b == c or a == c로 하고 마지막에 else를 통해 모두 다른 경우를 받으면 됩니다....만 2달전의 저는 다르게 했네요... 처음에 a와 b가 같은 조건에서 다른 하나가 같거나 다르거나 여기에서 이미 3가지가 같은 경우가 나왔기에, 다음 2개 조건에서 b,c가 같거나, a,c가 같은 걸로 해서 두수가 같은경우를 했습니다 그리고 마지막에 el..

백준 알고리즘 - 브론즈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 레벨에서는 이런 단순 계산 또는 문구 출력 문제들이 많이 나오는데 여기서 연습을 하고 다음 단계로 가면 좋을듯 하네요 ..

728x90
반응형