본문 바로가기

백준3

[백준] (Swift) 2675 문자열 반복 2675 문자열 반복 반복할 횟수와 반복할 문자열을 입력받아 문자열의 각 문자들을 입력받은 횟수만큼 출력한다. 한 줄에 횟수와 문자열이 같이 나오므로, String으로 받은 후 횟수만 Int로 형변환해 사용한다. 테스트 케이스를 여러 개 받는데 한 케이스에서는 개행이나 공백 없이 이어 쓰고, 각 케이스를 개행으로 구분해서 출력해준다. import Foundation for _ in 1...Int(readLine()!)! { let test = readLine()!.components(separatedBy: " ") for c in test[1] { for _ in 1...Int(test[0])! { print(c, terminator: "") } } print("") } 2022. 7. 11.
[백준](Swift) 1차원 배열 1차원 배열 단계를 해결해보자! 10818 최소, 최대 입력 받은 숫자들 중 최솟값, 최댓값을 찾는 문제다. 이 문제를 풀 때는 components를 사용하면 안 된다. 초반 포스팅에서 언급했듯이 입력을 공백 기준으로 자르는 방법으로 components, split 이 두 가지가 있는데 이 중 더 빠른 방법은 split이므로 이 문제는 split을 사용해야만 시간 초과가 나지 않는다. 잘 비교된 글이 있어서 링크를 첨부한다. Swift split VS components 처음에는 입력을 전부 받고 최솟값을 저장할 minn = 1000000, 최댓값을 저장할 maxn = -1000000을 만들고 입력받은 숫자들을 돌면서 값을 갱신해줬다. 답은 맞았다. 그런데 조금 더 찾아보니 배열에 min(), max().. 2022. 6. 4.
[백준] (C++) 5567 - 결혼식 BOJ 실버1 5567번 결혼식 문제입니다. 상근이의 결혼식에 동기들 중 자신의 친구와 친구의 친구만을 초대하는 문제입니다. 문제 보기 백준 5567 접근 다른 풀이들은 대부분 BFS로 거리를 이용해서 해결했습니다. '친구의 친구의 친구의... 친구'같이 확인해야 하는 관계가 두 번 이상 이어진다면 BFS가 정석이겠지만 이 문제에서는 친구의 친구까지만 확인하면 돼서 저는 이중 for문을 이용해서 해결했습니다. 문제 풀이 - 친구 관계를 이차원 배열에 1로 표현해서 전부 입력을 받습니다 - 1(상근이)과 친구인 학번(i)을 초대합니다 - 친구인 학번(i)과 친구인 학번(k)도 초대합니다 코드 #include using namespace std; int map[501][501]; // 친구 관계 저장 int.. 2022. 1. 12.