본문 바로가기
  • 머킹이의 머신로그
오늘부터 코딩테스트

[오늘부터 코딩테스트] hackerrank 문제 풀기

by 머킹 2023. 11. 23.
728x90

[파이썬] Hackerrank Polynomial Regression: Office Prices 풀기

안녕하세요 머킹입니다.

저는 ML 분야를 희망하는 취준생으로 

항상 코딩테스트에 대한 의문이 들었습니다.

 

머신러닝 분야도 똑같이 코딩테스트를 하는 걸까?

조금 더 직무에 가까운 코딩테스트는 없을까?

라는 생각을 하던 중 hackerrank를 발견했습니다.

 

조금 늦게 알게된 것 같아서 아쉽지만

또 열심히 풀어나가면 되겠죠!

 

이 문제를 풀다가 튜토리얼이 있는 걸 알았습니다.

다음부터는 튜토리얼도 들고올게요!

 


 

이렇게 드디어 머신러닝 다운(?) 코딩테스트를 할 수 있습니다.

단 문제가 길고 요구사항을 꼼꼼하게 읽어봐야 합니다!

 

그렇게 맨 아래로 내려가면 제출하는 대시보드가 있습니다.

 

 

이곳에서 언어를 선택하고 진행하면 됩니다.

 

from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
import numpy as np


F, N = map(int, input().split())

data = []
for _ in range(N):
    row = list(map(float, input().split()))
    data.append(row)

X = np.array([row[:-1] for row in data])
y = np.array([row[-1] for row in data])

model = LinearRegression()
model.fit(X, y)

T = int(input())
for _ in range(T):
    test_case = list(map(float, input().split()))
    predicted_price = model.predict([test_case])[0]
    print(predicted_price)

 

저는 이 코드를 썼더니 아래와 같은 에러가 났습니다.

 

런타임 에러..!!

from sklearn.linear_model import LinearRegression
import numpy as np

# Input
F, N = map(int, input().split())

# Data Initialization
data = []
for _ in range(N):
    row = list(map(float, input().split()))
    data.append(row)

# Data Splitting
X = np.array([row[:-1] for row in data])  # Features
y = np.array([row[-1] for row in data])   # Price

# Model Training
model = LinearRegression()
model.fit(X, y)

# Test Case Prediction
T = int(input())
test_cases = [list(map(float, input().split())) for _ in range(T)]
predicted_prices = model.predict(test_cases)

# Output Predictions
for price in predicted_prices:
    print(price)

이 코드로 테스트를 통과했으니

바로 제출을 눌렀습니다!

 

 

이렇게 첫 문제를 풀었습니다!