본문 바로가기

Algorithm/OCaml

[BOJ 11382] 꼬마 정민 (OCaml)

사칙연산 문제

근데 이제 OCaml을 곁들인

 


[문제 풀이]

 

A + B + C를 구하는 문제입니다.

A, B, C가 int범위를 초과하므로 이에 유의합시다.

 


[소스 코드] / OCaml

 

module F = Format

let _ =
  let a = read_line() in
  let str_lst = String.split_on_char ' ' a in
  let lst = List.map int_of_string str_lst in
  let sum = List.fold_left (+) 0 lst in
  F.printf "%d\n" sum

 


[노트]

 

OCaml은 연속적인 두 expression이 붙어있다면 함수 호출로 인식. 그러므로 와일드카드를 사용하여 Definition으로 선언해줘야 함.

String.split_on_char <token> <str>: token을 기준으로 str을 쪼개서 list로 변환

int_of_string: string to int

List.map <function> <lst>: lst의 모든 원소에 function 적용

List.fold_left <funtion> <lst>: lst의 모든 원소에 funtion을 적용한 후 다 더함.

(+): 더하기 함수

 

 

'Algorithm > OCaml' 카테고리의 다른 글

[BOJ 10993] 별 찍기 - 18 (OCaml)  (0) 2024.04.03