โœ๏ธToday I Learned

๐Ÿ“… 2025-10-20

  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค: ๋ฉ€์ฉกํ•œ ์‚ฌ๊ฐํ˜•

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค: ๋ฉ€์ฉกํ•œ ์‚ฌ๊ฐํ˜•

๋ฌธ์ œ ๋งํฌ
๋ฌธ์ œ ์„ค๋ช…
๊ฐ€๋กœ ๊ธธ์ด๊ฐ€ Wcm, ์„ธ๋กœ ๊ธธ์ด๊ฐ€ Hcm์ธ ์ง์‚ฌ๊ฐํ˜• ์ข…์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ข…์ด์—๋Š” ๊ฐ€๋กœ, ์„ธ๋กœ ๋ฐฉํ–ฅ๊ณผ ํ‰ํ–‰ํ•˜๊ฒŒ ๊ฒฉ์ž ํ˜•ํƒœ๋กœ ์„ ์ด ๊ทธ์–ด์ ธ ์žˆ์œผ๋ฉฐ, ๋ชจ๋“  ๊ฒฉ์ž์นธ์€ 1cm x 1cm ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ์ด ์ข…์ด๋ฅผ ๊ฒฉ์ž ์„ ์„ ๋”ฐ๋ผ 1cm ร— 1cm์˜ ์ •์‚ฌ๊ฐํ˜•์œผ๋กœ ์ž˜๋ผ ์‚ฌ์šฉํ•  ์˜ˆ์ •์ด์—ˆ๋Š”๋ฐ, ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์ด ์ข…์ด๋ฅผ ๋Œ€๊ฐ์„  ๊ผญ์ง€์  2๊ฐœ๋ฅผ ์ž‡๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ์ž˜๋ผ ๋†“์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ํ˜„์žฌ ์ง์‚ฌ๊ฐํ˜• ์ข…์ด๋Š” ํฌ๊ธฐ๊ฐ€ ๊ฐ™์€ ์ง๊ฐ์‚ผ๊ฐํ˜• 2๊ฐœ๋กœ ๋‚˜๋ˆ„์–ด์ง„ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์ข…์ด๋ฅผ ๊ตฌํ•  ์ˆ˜ ์—†๋Š” ์ƒํƒœ์ด๊ธฐ ๋•Œ๋ฌธ์—, ์ด ์ข…์ด์—์„œ ์›๋ž˜ ์ข…์ด์˜ ๊ฐ€๋กœ, ์„ธ๋กœ ๋ฐฉํ–ฅ๊ณผ ํ‰ํ–‰ํ•˜๊ฒŒ 1cm ร— 1cm๋กœ ์ž˜๋ผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋งŒํผ๋งŒ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
๊ฐ€๋กœ์˜ ๊ธธ์ด W์™€ ์„ธ๋กœ์˜ ๊ธธ์ด H๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ •์‚ฌ๊ฐํ˜•์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”.

์ œํ•œ์‚ฌํ•ญ
W, H : 1์–ต ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜

ํ’€์ด

์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•์œผ๋กœ ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋ฅผ ๊ตฌํ•˜๊ณ  ์ „์ฒด ์‚ฌ๊ฐํ˜•์—์„œ ๋Œ€๊ฐ์„ ์ด ์ง€๋‚˜๋Š” ์‚ฌ๊ฐํ˜•์˜ ๊ฐœ์ˆ˜๋ฅผ ๋บ๋‹ค.
๋Œ€๊ฐ์„ ์ด ์ง€๋‚˜๋Š” ์‚ฌ๊ฐํ˜•์˜ ์ˆ˜
W + H - ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜
-> ๋Œ€๊ฐ์„ ์ด 0,0 ์—์„œ W,H๋กœ ์ด๋™ํ•œ๋‹ค๊ณ  ๋ณผ ๋•Œ ๋Œ€๊ฐ์„ ์€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ W๋ฒˆ ์ด๋™ + ์œ„๋กœ H๋ฒˆ ์ด๋™ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ๊ฒฉ์ž์ ์„ ์ง€๋‚˜๋Š” ๊ฒฝ์šฐ ์˜ค๋ฅธ์ชฝ ์ด๋™๊ณผ ์œ„์ชฝ ์ด๋™์ด ์ค‘๋ณต๋˜๋ฏ€๋กœ ์ด ๊ฒฝ์šฐ๋ฅผ ํ•œ ๋ฒˆ ๋นผ์•ผ ํ•œ๋‹ค. ๋Œ€๊ฐ์„ ์ด ์ง€๋‚˜๊ฐ€๋Š” ๊ฒฉ์ž์ ์˜ ๊ฐœ์ˆ˜ = ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ ์ด๋ฏ€๋กœ ์ตœ์ข…์ ์œผ๋กœ ๋Œ€๊ฐ์„ ์ด ์ง€๋‚˜๋Š” ์‚ฌ๊ฐํ˜•์˜ ์ˆ˜๋Š” W + H - ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ ๊ฐ€ ๋œ๋‹ค.

using namespace std;


int getGcd(int a, int b)
{
    if(b==0)
    {
        return a;
    }
    return getGcd(b, a % b);
}

long long solution(int w,int h) {
    long long answer = (long long)w * h;
    int gcd = getGcd(w, h);
    long long count = (long long)w + h - gcd;      
    return answer - count;
}

๐Ÿ’ก ๋А๋‚€ ์  (What I Felt)

์ฝ”๋“œ์นดํƒ€ ๋งค์ผ ํ•˜๊ธฐ


์ถœ์ฒ˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค: ๋ฉ€์ฉกํ•œ ์‚ฌ๊ฐํ˜• 

0๊ฐœ์˜ ๋Œ“๊ธ€