본문 바로가기

Python10

[소프티어] 징검다리 문제 설명남북으로 흐르는 개울에 동서로 징검다리가 놓여져 있다. 이 징검다리의 돌은 들쑥날쑥하여 높이가 모두 다르다. 철수는 개울의 서쪽에서 동쪽으로 높이가 점점 높은 돌을 밟으면서 개울을 지나가려고 한다. 돌의 높이가 서쪽의 돌부터 동쪽방향으로 주어졌을 때 철수가 밟을 수 있는 돌의 최대 개수는? https://softeer.ai/practice/6293 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제 풀이사실 제가 문제를 제대로 이해하지 못한 것인지, test case는 통과하는데 반례가 있는지 정답이 아니라고 나옵니다.문제의 조건에 대해서 좀 더 고민을 해봐야 할 것 같습니다...import sysN = int(input())heights = list(map(int, sy.. 2025. 2. 7.
[소프티어] 성적 평균 문제 설명학생 수와 구간 개수 K를 첫줄에서 입력받습니다.그리고 N명에 대한 점수도 아래 줄에서 입력 받습니다. K번 반복해서 구간을 입력받고, 구간에 해당하는 학생들의 점수 평균을 출력하는 문제입니다. https://softeer.ai/practice/6294 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제 풀이출력 형식을 꼭 소수점 둘째자리로 맞춰줘야 통과가 됩니다.아래 코드블럭에 나온 형식대로 사용해도 되고 "{:.2f}".format(average) 이렇게 작성해도 됩니다.import sysN, K = map(int, input().split())scores = list(map(int,input().split()))# score = []#print(scores)for i.. 2025. 2. 7.
[소프티어] A+B 문제 설명A, B를 입력받아 A+B 를 return 하는 문제입니다.첫 줄에서 횟수 T를 입력받고, T번 만큼 반복 진행합니다. https://softeer.ai/practice/6295 Softeer - 현대자동차그룹 SW인재확보플랫폼 softeer.ai 문제 풀이소프티어 문제는 처음 풀어보았는데, 프로그래머스와는 달리 입력부터 받아야 해서 처음 부분이 조금 어려웠습니다.입력 받는 방식은 크게 2가지가 있는 것 같았습니다.1. input()2. sys.stdin.readline() input()의 경우 여러 줄을 입력받는 반복문 코드에 사용 될 경우 시간 초과가 발생할 수 있다고 하니 반복적으로 입력받아야 하는 문제에서는 두번째 방법을 사용하는게 좋을 것 같습니다. import sysT = int(sy.. 2025. 2. 7.
[프로그래머스] 프로세스 문제 설명운영체제의 역할 중 하나는 컴퓨터 시스템의 자원을 효율적으로 관리하는 것입니다. 이 문제에서는 운영체제가 다음 규칙에 따라 프로세스를 관리할 경우 특정 프로세스가 몇 번째로 실행되는지 알아내면 됩니다. 1. 실행 대기 큐(Queue)에서 대기중인 프로세스 하나를 꺼냅니다. 2. 큐에 대기중인 프로세스 중 우선순위가 더 높은 프로세스가 있다면 방금 꺼낸 프로세스를 다시 큐에 넣습니다. 3. 만약 그런 프로세스가 없다면 방금 꺼낸 프로세스를 실행합니다.   3.1 한 번 실행한 프로세스는 다시 큐에 넣지 않고 그대로 종료됩니다. 예를 들어 프로세스 4개 [A, B, C, D]가 순서대로 실행 대기 큐에 들어있고, 우선순위가 [2, 1, 3, 2]라면 [C, D, A, B] 순으로 실행하게 됩니다. .. 2025. 2. 6.
[프로그래머스] 네트워크 문제 설명네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크의 개수를 return 하도록 solution 함수를 작성하시오. 제한사항 컴퓨터의 개수 n은 1 이상 200 이하인 자연수입니다. 각 컴퓨터는 0부터 n-1인 정수로 표현합니다. i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computers[i.. 2025. 2. 3.
[프로그래머스] 게임 맵 최단거리 문제 설명ROR 게임은 두 팀으로 나누어서 진행하며, 상대 팀 진영을 먼저 파괴하면 이기는 게임입니다. 따라서, 각 팀은 상대 팀 진영에 최대한 빨리 도착하는 것이 유리합니다. 지금부터 당신은 한 팀의 팀원이 되어 게임을 진행하려고 합니다. 캐릭터가 움직일 때는 동, 서, 남, 북 방향으로 한 칸씩 이동하며, 게임 맵을 벗어난 길은 갈 수 없습니다. 만약, 상대 팀이 자신의 팀 진영 주위에 벽을 세워두었다면 상대 팀 진영에 도착하지 못할 수도 있습니다. 게임 맵의 상태 maps가 매개변수로 주어질 때, 캐릭터가 상대 팀 진영에 도착하기 위해서 지나가야 하는 칸의 개수의 최솟값을 return 하도록 solution 함수를 완성해주세요. 단, 상대 팀 진영에 도착할 수 없을 때는 -1을 return 해주세요.. 2025. 1. 31.