๐Ÿ“ฆ Chango/๐Ÿซ First Solve at School

[BOJ B2][C++] ๋ฐฑ์ค€ 1731๋ฒˆ: ์ถ”๋ก 

์„ ๋‹ฌ 2023. 1. 5. 13:56
๋ฐ˜์‘ํ˜•

https://www.acmicpc.net/problem/1731

 

1731๋ฒˆ: ์ถ”๋ก 

๋“ฑ์ฐจ๊ฐ€ ์ •์ˆ˜์ธ ๋“ฑ์ฐจ์ˆ˜์—ด (์–ด๋–ค ์ˆ˜์— ์ฐจ๋ก€๋Œ€๋กœ ์ผ์ •ํ•œ ์ˆ˜๋ฅผ ๋”ํ•ด์„œ ์ด๋ฃจ์–ด์ง€๋Š” ์ˆ˜์—ด) ์€ 2๊ฐœ์˜ ์ˆซ์ž๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. P๋Š” ์ˆ˜์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ˆ˜์ด๊ณ , Q๋Š” ๊ทธ ๋‹ค์Œ์ˆ˜๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ๋ฐ”๋กœ ์ „์˜ ์ˆ˜์— ๋”ํ•ด

www.acmicpc.net

 

๋ฌธ์ œ

๋“ฑ์ฐจ๊ฐ€ ์ •์ˆ˜์ธ ๋“ฑ์ฐจ์ˆ˜์—ด (์–ด๋–ค ์ˆ˜์— ์ฐจ๋ก€๋Œ€๋กœ ์ผ์ •ํ•œ ์ˆ˜๋ฅผ ๋”ํ•ด์„œ ์ด๋ฃจ์–ด์ง€๋Š” ์ˆ˜์—ด) ์€ 2๊ฐœ์˜ ์ˆซ์ž๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. P๋Š” ์ˆ˜์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ˆ˜์ด๊ณ , Q๋Š” ๊ทธ ๋‹ค์Œ์ˆ˜๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ๋ฐ”๋กœ ์ „์˜ ์ˆ˜์— ๋”ํ•ด์•ผ ํ•˜๋Š” ์ˆ˜์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด P=1, Q=2 ์ด๋ฉด ๊ทธ ๋“ฑ์ฐจ์ˆ˜์—ด์€ 1, 3, 5, 7, ..... ์ด ๋œ๋‹ค.

๋“ฑ๋น„๊ฐ€ ์ •์ˆ˜์ธ ๋“ฑ๋น„์ˆ˜์—ด (์–ด๋–ค ์ˆ˜์—์„œ ์‹œ์ž‘ํ•ด ์ฐจ๋ก€๋กœ ๊ฐ™์€ ์ˆ˜๋ฅผ ๊ณฑํ•˜์—ฌ ๋งŒ๋“  ์ˆ˜์—ด) ์€ ๋“ฑ์ฐจ์ˆ˜์—ด๊ณผ ๋น„์Šทํ•˜๊ฒŒ 2๊ฐœ์˜ ์ˆซ์ž๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. P๋Š” ์ˆ˜์—ด์˜ ์ฒซ ๋ฒˆ์งธ ์ˆ˜์ด๊ณ , Q๋Š” ๊ทธ ๋‹ค์Œ์ˆ˜๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ๋ฐ”๋กœ ์ „์˜ ์ˆ˜์— ๊ณฑํ•ด์•ผ ํ•˜๋Š” ์ˆ˜์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด P=3, Q=2์ด๋ฉด ๊ทธ ๋“ฑ๋น„์ˆ˜์—ด์€ 3, 6, 12, ...์ด ๋œ๋‹ค.

ํ…Œ๋””๋Š” ์„ธ์ƒ์—์„œ ์ˆ˜ํ•™์„ ์ œ์ผ ์ข‹์•„ํ•ด์„œ ๋งค์ผ๊ฐ™์ด ์ด ์ˆ˜์—ด์ด ๋“ฑ์ฐจ์ˆ˜์—ด์ธ์ง€ ๋“ฑ๋น„์ˆ˜์—ด์ธ์ง€ ์ •ํ•œ๋‹ค์Œ์— ๋‹ค์Œ ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค.

์–ด๋–ค ์ˆ˜์—ด์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ทธ ์ˆ˜์—ด์˜ ๊ทœ์น™์ด ๋“ฑ์ฐจ์ˆ˜์—ด์ธ์ง€, ๋“ฑ๋น„์ˆ˜์—ด์ธ์ง€ ๊ฒฐ์ •ํ•œ ํ›„์—, ๋‹ค์Œ์— ๋“ฑ์žฅํ•  ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ์ˆ˜์—ด์˜ ๊ธธ์ด N์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ์ˆ˜์—ด์˜ ๊ฐ ์›์†Œ๊ฐ€ ์ฐจ๋ก€๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ์ˆ˜์—ด์€ ๋“ฑ์ฐจ์ˆ˜์—ด์ด๋‚˜ ๋“ฑ๋น„์ˆ˜์—ด ์ค‘์— ํ•˜๋‚˜๋‹ค. N์€ ํ•ญ์ƒ 3 ์ด์ƒ 50์ดํ•˜์ด๋ฉฐ, ์ž…๋ ฅ๋˜๋Š” ์ˆ˜๋Š” 106 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ์ˆ˜์—ด์˜ ๋‹ค์Œ ์›์†Œ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์ด ์ˆ˜๋Š” 20์–ต๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.

 

ํ’€์ด

// Authored by : seondal
// Co-authored by : -

// #include <bits/stdc++.h>
#include <iostream>
#include <vector>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
    
    int n;
    cin >> n;
    vector<int> input(n);
    for(int i=0; i<n; i++)
        cin >> input[i];
    
    bool isArithmetic = false;
    int d = input[1] - input[0];
    int r = input[1] / input[0];
    if(d == input[2] - input[1])
        isArithmetic = true;
    
    if(isArithmetic)
        cout << input[n-1] + d;
    else
        cout << input[n-1] * r;
    
    return 0;
}

/*
 */
๋ฐ˜์‘ํ˜•