4 73 67 38 33
75 67 40 33
package main import ( "bufio" "fmt" "os" "strconv" ) func collectGrade(a []int) { for _, v := range a { if v%5 < 3 || v < 38 { fmt.Println(v) } else { fmt.Println(v + (5 - (v % 5))) } } } func main() { reader := bufio.NewReader(os.Stdin) n, _, _ := reader.ReadLine() ni, _ := strconv.Atoi(string(n)) ar := make([]int, ni) for i := 0; i < ni; i++ { grade, _, _ := reader.ReadLine() gradei, _ := strconv.Atoi(string(grade)) ar[i] = gradei } collectGrade(ar) }
package main import ( "fmt" ) func collectGrade(a []int) { for _, v := range a { if v%5 < 3 || v < 38 { fmt.Println(v) } else { fmt.Println(v + (5 - (v % 5))) } } } func main() { collectGrade([]int{4,73,67,38,33}) }
#!/usr/bin/python def collectGrade(arg): for grade in arg: if grade < 38: print grade elif (grade % 5) > 2: print grade - (grade%5) + 5 else: print grade collectGrade([73, 67, 38, 33, 62])
Copyrights © - Joinc, All Rights Reserved. Inherited From - Yundream Rebranded By - Joonphil
문제
- 모든 학생은 0부터 100 사이의 점수를 가진다.
- 학점이 40점 이상이라면 과락이다.
이 대학의 대학교수인 샘은 아래와 같이 점수에 대한 올림 정책을 만들어서 학생들의 점수를 평가한다.- 해당 점수의 다음 5 배수 점수와의 차이가 3보다 작다면, 이 점수는 다음 점수의 5배수로 올림을 한다.
- 만약 학점이 38 보다 작다면, 과락이 된다. 38 이상이면, 1의 정책에 의해서 40점이 되고 과락을 면할 수 있기 때문이다.
예를 들어 학점 == 84라면 85 - 84 < 3 이므로 85점이 된다. 학점 == 29라면, 올림을 해서 30이 되더라도 40보다 작으므로 과락이다. 샘은 학생의 점수를 입력 받아서 위의 정책에 따라서 점수를 보정하는 소프트웨어를 개발하려고 한다.입력 포맷
제한 조건
입력 예제
출력 예제
풀이
표준입력 버전
package main import ( "bufio" "fmt" "os" "strconv" ) func collectGrade(a []int) { for _, v := range a { if v%5 < 3 || v < 38 { fmt.Println(v) } else { fmt.Println(v + (5 - (v % 5))) } } } func main() { reader := bufio.NewReader(os.Stdin) n, _, _ := reader.ReadLine() ni, _ := strconv.Atoi(string(n)) ar := make([]int, ni) for i := 0; i < ni; i++ { grade, _, _ := reader.ReadLine() gradei, _ := strconv.Atoi(string(grade)) ar[i] = gradei } collectGrade(ar) }순수 알고리즘 버전
package main import ( "fmt" ) func collectGrade(a []int) { for _, v := range a { if v%5 < 3 || v < 38 { fmt.Println(v) } else { fmt.Println(v + (5 - (v % 5))) } } } func main() { collectGrade([]int{4,73,67,38,33}) }Python 버전
#!/usr/bin/python def collectGrade(arg): for grade in arg: if grade < 38: print grade elif (grade % 5) > 2: print grade - (grade%5) + 5 else: print grade collectGrade([73, 67, 38, 33, 62])Recent Posts
Archive Posts
Tags