728x90
반응형
오늘은 요즘 굉장히 핫한 chatgpt를 이용하여 정보올림피아드 문제를 풀어볼 것이다.
오늘 chatgpt한테 풀어보게 할 문제는 '지우개' 문제이다.


위 문제는 배열을 칸을 나눠서 홀수 칸의 숫자를 지우고, 남은 배열 원소를 왼쪽으로 미는 과정을 반복해서 마지막 남은 수를 구하는 문제이다.
그럼 본격적으로 chatgpt한테 정보올림피아드 코딩문제를 냈을 때 풀 수 있는지 확인 해보겠다.
먼저 문제를 내겠다고 하니 자신있는 모습을 보여준다.

그 다음 문제설명을 다음과 같이 한번에 끝내니 이해를 했다고 한다.

문제 설명이 굉장히 어려웠는데 chatgpt가 이해했다고 해서 확인할 겸 n이 9일 경우 무슨 수가 남는지 원리를 보여주면서 설명하라고 했다.

그런데 진짜 완벽히 이해한 모습을 보여주고 있다.
반응형
이제 문제의 조건을 만족하여 파이썬 코드를 만들어 달라고 했다.

chatgpt는 자신감있게 아래와 같은 코드를 만들어 주었다.(주석 설명까지 ㄷㄷ)
n = int(input())
if 1 <= n <= 100:
arr = list(range(1, n + 1)) # 1부터 n까지의 수로 배열 생성
while len(arr) > 1:
arr = [arr[i] for i in range(len(arr)) if i % 2 == 1] # 홀수 인덱스 제거
arr = [arr[i] for i in range(len(arr)) if arr[i] != ''] # 빈칸 제거
print(arr[0])
else:
print("N은 1 이상 100 이하의 정수여야 합니다.")
이제 이 코드가 맞는지 oikorea에서 채점을 했다.

그랬더니 진짜 100점을 맞은 것을 확인할 수 있다.
추가로 아래와 같이 C언어 변환도 가능한 것을 확인할 수 있다.

728x90
반응형
'chatGPT' 카테고리의 다른 글
ChatGPT - 수능문제 풀어보기(수학, 영어) (0) | 2023.02.16 |
---|