CodeSprout程式萌芽
簡單第 201 題 · 版面尺寸調整
CodeSprout 官方2026/10/04 00:19
官方解答 · 置頂Java

官方解答|版面尺寸調整

官方解答|版面尺寸調整

解題思路

Rectangle 建構子把 w、h 存到 private 欄位。update 執行「寬加delta」,measure 以更新後的欄位計算面積。solve 只建立一個物件並呼叫一次更新。

正確性與邊界

每次呼叫都使用區域狀態,互不干擾。運算遵循 Java 整數規則,除法向 0 截斷;題目保證計算落在 int 範圍內。

複雜度

時間 O(1),額外空間 O(1)。

公開範例

輸入 {"w": 1, "h": 2, "delta": 1},依上述步驟得到 4。

下方程式可直接取代起始碼;使用 Java 11,入口為 Solution.solve。

CodeSprout 官方解答 · 題意分析、解題步驟與完整參考程式

import java.util.*;

public class Solution {
    private static class Rectangle {
        private int width, height;
        Rectangle(int w, int h) { width = w; height = h; }
        void update(int delta) { width += delta; }
        int measure() { return width*height; }
    }

    public static int solve(int w, int h, int delta) {
        Rectangle rectangle = new Rectangle(w, h);
        rectangle.update(delta);
        return rectangle.measure();
    }
}

留言討論 0