https://www.acmicpc.net/problem/2475 이 문제를 제대로 풀기 위해서는 먼저 리스트(list)와 맵(map)에 대한 이해가 필요합니다. 리스트에 맵 사용하기 https://dojang.io/mod/page/view.php?id=2286 변수의 개수가 여러 개인 경우 map을 이용하여 자료형을 한 번에 지정해줄 수 있습니다. li = list(map(int, input().split())) sum = 0 for i in li: sum += i**2 print(sum%10)
https://www.acmicpc.net/problem/2338 1000자리에 육박하는 긴 정수의 덧셈, 뺄셈, 곱셈을 구하는 문제입니다. a,b=int(input()),int(input()) print(a+b,a-b,a*b,sep='\n') 각각 int형으로 입력받은 뒤 구분자에 \n을 넣어 출력해주면 됩니다.
https://www.acmicpc.net/problem/1000 회사에서 파이썬을 쓰게 되어 문법도 익힐겸 지금까지 풀었던 문제들을 모두 파이썬으로 다시 풀어보고자 합니다. A+B는 아마 백준에서 가장 간단한 문제가 아닐까 싶습니다. 먼저는 틀린 예시입니다. a,b = input().split() print(a+b) 3 5를 입력하면 8이 아닌 35란 결과값이 나옵니다. 위의 경우 a와 b를 각각 문자열로 인식하기 때문입니다. 때문에, int를 사용하여 정수형임을 명시해주어야 합니다. a,b = input().split() print(int(a)+int(b))
https://www.acmicpc.net/problem/1252 (런타임 에러로 현재 수정중입니다.) 이진수 덧셈입니다. 말그대로, 이진수 두 개를 입력받아 더한 뒤 결과값을 출력해주는 간단한 프로그램입니다. 본래 출제자의 목적은 1+1을 했을 때 carry를 발생시키는 것이겠지만, 저는 그런 건 다 무시하고 일단 10진법으로 변한 뒤 더해서 다시 2진법으로 변환했습니다. 머리가 나쁘면 몸이 고생한다는 게 이런 걸까요... 어쨌거나 소스 보시죠. import java.util.Scanner; public class Main { public static void main(String[] args) { int cnt=1; Scanner sc = new Scanner(System.in); int n1 = s..
https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 �� www.acmicpc.net 문자열 처리에 관한 문제입니다. 문제가 복잡해보이지만, 한마디로 정리하면 이렇습니다. "한 열씩 비교하여 셋 다 같으면 공통된 문자를 그대로 출력하고, 그 중 하나라도 다르면 ?를 출력해라" 문제에는 제시되지 않은 반례를 먼저 알려드리겠습니다. [입력] 3 abc bbc aba [출력] ?b? 이렇게 앞부분에 서로 다른 문자가 나올 수도 있습니다. 저도 처음에 이 부분을 놓쳐서 코드를 ..
https://www.acmicpc.net/problem/1038 감소하는 수 찾기 문제입니다. 문제를 보자마자 브루트 포스(무차별 대입)이라는 느낌이 들었습니다. 브루트 포스는 경우의 수를 최대한 필터링 해 시간을 단축시키는 것이 목적입니다. 여기서 추려낼 수 있는 가장 중요한 알고리즘은 이것입니다. 오른쪽 자리수가 왼쪽보다 같거나 크면, 그 단위는 건너뜀. 무슨 말인가 하면, 10의 경우 오른쪽의 0이 왼쪽의 1보다 작으므로 감소하는 수 O 11의 경우 오른쪽의 1이 왼쪽의 1과 같으므로 감소하는 수 X 이런 경우 나머지 1의 자리는 볼 것도 없이 전부 패스하고, 20부터 비교하면 됩니다. 그렇다면, 지금 비교하고 있는 자리가 몇 번째 자리인지, 이를 알려주는 변수가 필요하겠죠. 자리수의 영어명을 따..
solved.ac를 통해 백준 100문제 풀이를 채웠습니다. 주말에 몰아서 하루 30문제꼴로 푼 것 같네요. 느낀 점을 짤막하게 써보려합니다. 1. 코딩테스트(일명 코테)가 목적이라면, 브론즈 3까지는 풀 필요가 없다 영양가 없는 문제들이 상당히 많습니다. 특히 Text로 답변 제출이 가능한 출력 문제들이 그렇습니다. Hello World 하나면 족할 것을, 굳이 비슷하게 낸 문제들이 20문항쯤 되는듯 합니다. 대부분 브론즈5에 포진해 있습니다. 사칙연산과 printf(자바라면 Sysout)를 할 줄 안다면 일부러 풀 필요가 있나 싶습니다. 브론즈3까지도 이런 느낌을 많이 받았습니다. 그래도 풀겠다면 별찍기는 for문 기본기, 피보나치는 재귀를 구현해보기에 나쁘지 않은 것 같습니다. 실전에서 써먹을만한 ..