题目

类型:设计
image.png

解题思路

代码

  1. class Bank {
  2. long[] val;
  3. public Bank(long[] balance) {
  4. val = balance;
  5. }
  6. boolean check(int account) {
  7. return 1 <= account && account <= val.length;
  8. }
  9. public boolean transfer(int a, int b, long c) {
  10. if (!check(a) || !check(b)) return false;
  11. if (val[a - 1] >= c) {
  12. val[a - 1] -= c; val[b - 1] += c;
  13. return true;
  14. }
  15. return false;
  16. }
  17. public boolean deposit(int a, long c) {
  18. if (!check(a)) return false;
  19. val[a - 1] += c;
  20. return true;
  21. }
  22. public boolean withdraw(int a, long c) {
  23. if (!check(a)) return false;
  24. if (val[a - 1] >= c) {
  25. val[a - 1] -= c;
  26. return true;
  27. }
  28. return false;
  29. }
  30. }