01/10/2018, 13:52

Christmas Challenge to DNH

HELLO EVERYONE
Hiện giờ mình thấy 1 cái challenge rất hay và bổ ích trên reddit
Nguyên văn luật của nó như sau:
Description

No more hiding from your alarm clock! You’ve decided you want your computer to keep you updated on the time so you’re never late again. A talking clock takes a 24-hour time and translates it into words.

Input Description:

An hour (0-23) followed by a colon followed by the minute (0-59).

Output Description:

The time in words, using 12-hour format followed by am or pm.

Sample Input data

00:00
01:30
12:05
14:01
20:29
21:00

Sample Output data

It’s twelve am
It’s one thirty am
It’s twelve oh five pm
It’s two oh one pm
It’s eight twenty nine pm
It’s nine pm

Caution: output kết quả là tiếng anh nha!
Link gốc: https://www.reddit.com/r/dailyprogrammer/comments/6jr76h/20170627_challenge_321_easy_talking_clock/

HK boy viết 15:58 ngày 01/10/2018

Xong

units = ["", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine",
"ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"]

tens = ["oh", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninty"]

def read(s):
	h, m = s.split(':')
	h = int(h)
	m = int(m)

	if h < 12:
		time_str = "am"
		
		if h == 0:
			h = 12
	else:
		time_str = "pm"
		if h != 12:
			h -= 12

	h_read = units[h]
	if m == 0:
		m_read = ""
	elif m < 10:
		m_read = tens[0] + " " + units[m] + " "
	elif m < 20:
		m_read = units[m] + " "
	else:
		if m % 10 == 0:
			m_read = tens[m // 10] + " "
		else:
			m_read = tens[m // 10] + " " + units[m % 10] + " "

	return "It's " + h_read + " " + m_read + time_str 

print(read(input()))

P/s: Sao hiển thị trên diễn đàn 1 tab = 4 spaces trên Windows và 1 tab = 8 spaces trên Linux là thế nào nhỉ?

Hung viết 15:59 ngày 01/10/2018

Sao không đi chơi Giáng Sinh mà ở nhà ngồi máy giải bài tập vậy

HK boy viết 16:05 ngày 01/10/2018

Đi chơi với ai bây giờ :v

[spoiler] đi chơi đâu mất rồi :’([/spoiler]

Aragami1408 viết 15:54 ngày 01/10/2018

Không có gấu!!! huhuhu

Aragami1408 viết 15:55 ngày 01/10/2018

sao lần này anh dùng python chứ không dùng c++ hả anh!!!
But whatever love my senpai

HK boy viết 16:06 ngày 01/10/2018

Mình đang tiện tay code Python. Còn C++ cũng tương tự mà =))

Aragami1408 viết 16:06 ngày 01/10/2018

Em nghĩ em nhỏ tuổi hơn anh nên anh xưng em là “Mình” thì hơi ngại

Bài liên quan
0