1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
| // @Title: 简易银行系统 (Simple Bank System)
// @Author: 15816537946@163.com
// @Date: 2022-03-18 23:39:14
// @Runtime: 328 ms
// @Memory: 36.5 MB
type Bank []int64
func Constructor(balance []int64) Bank {
return balance
}
func (b Bank) Transfer(account1 int, account2 int, money int64) bool {
if account1 > len(b) || account2 > len(b) || b[account1-1] < money {
return false
}
b[account1-1] -= money
b[account2-1] += money
return true
}
func (b Bank) Deposit(account int, money int64) bool {
if account > len(b) {
return false
}
b[account-1] += money
return true
}
func (b Bank) Withdraw(account int, money int64) bool {
if account > len(b) || b[account-1] < money {
return false
}
b[account-1] -= money
return true
}
/**
* Your Bank object will be instantiated and called as such:
* obj := Constructor(balance);
* param_1 := obj.Transfer(account1,account2,money);
* param_2 := obj.Deposit(account,money);
* param_3 := obj.Withdraw(account,money);
*/
|