๐Ÿ’ป

[๋ฐฑ์ค€] ๋ฌธ์ž์—ด์ฒ˜๋ฆฌ - 9935. ๋ฌธ์ž์—ด ํญ๋ฐœ ๋ณธ๋ฌธ

์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œํ’€์ด Baekjoon

[๋ฐฑ์ค€] ๋ฌธ์ž์—ด์ฒ˜๋ฆฌ - 9935. ๋ฌธ์ž์—ด ํญ๋ฐœ

๋˜ํšจ๋‹ˆ 2020. 3. 5. 12:28

๋ฌธ์ œ

์ƒ๊ทผ์ด๋Š” ๋ฌธ์ž์—ด์— ํญ๋ฐœ ๋ฌธ์ž์—ด์„ ์‹ฌ์–ด ๋†“์•˜๋‹ค. ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ํญ๋ฐœํ•˜๋ฉด ๊ทธ ๋ฌธ์ž๋Š” ๋ฌธ์ž์—ด์—์„œ ์‚ฌ๋ผ์ง€๋ฉฐ, ๋‚จ์€ ๋ฌธ์ž์—ด์€ ํ•ฉ์ณ์ง€๊ฒŒ ๋œ๋‹ค.

ํญ๋ฐœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณผ์ •์œผ๋กœ ์ง„ํ–‰๋œ๋‹ค.

  • ๋ฌธ์ž์—ด์ด ํญ๋ฐœ ๋ฌธ์ž์—ด์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ์—, ๋ชจ๋“  ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ํญ๋ฐœํ•˜๊ฒŒ ๋œ๋‹ค. ๋‚จ์€ ๋ฌธ์ž์—ด์„ ์ˆœ์„œ๋Œ€๋กœ ์ด์–ด ๋ถ™์—ฌ ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์„ ๋งŒ๋“ ๋‹ค.
  • ์ƒˆ๋กœ ์ƒ๊ธด ๋ฌธ์ž์—ด์— ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ํฌํ•จ๋˜์–ด ์žˆ์„ ์ˆ˜๋„ ์žˆ๋‹ค.
  • ํญ๋ฐœ์€ ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ๋ฌธ์ž์—ด์— ์—†์„ ๋•Œ๊นŒ์ง€ ๊ณ„์†๋œ๋‹ค.

์ƒ๊ทผ์ด๋Š” ๋ชจ๋“  ํญ๋ฐœ์ด ๋๋‚œ ํ›„์— ์–ด๋–ค ๋ฌธ์ž์—ด์ด ๋‚จ๋Š”์ง€ ๊ตฌํ•ด๋ณด๋ ค๊ณ  ํ•œ๋‹ค. ๋‚จ์•„์žˆ๋Š” ๋ฌธ์ž๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋•Œ๋Š” "FRULA"๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

ํญ๋ฐœ ๋ฌธ์ž์—ด์€ ๊ฐ™์€ ๋ฌธ์ž๋ฅผ ๋‘ ๊ฐœ ์ด์ƒ ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค.

 

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.

๋‘˜์งธ ์ค„์— ํญ๋ฐœ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ๊ธธ์ด๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 36๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.

๋‘ ๋ฌธ์ž์—ด์€ ๋ชจ๋‘ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž์™€ ๋Œ€๋ฌธ์ž, ์ˆซ์ž 0, 1, ..., 9๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

 

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ๋ชจ๋“  ํญ๋ฐœ์ด ๋๋‚œ ํ›„ ๋‚จ์€ ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค.

 

์˜ˆ์ œ ์ž…๋ ฅ1

mirkovC4nizCC44

C4

 

์˜ˆ์ œ ์ถœ๋ ฅ1

mirkovniz

 

์˜ˆ์ œ ์ž…๋ ฅ2

12ab112ab2ab

12ab

 

์˜ˆ์ œ ์ถœ๋ ฅ2

FRULA

 

์ƒ๊ฐ

์ธ๋ฑ์Šค ์ฒ˜๋ฆฌํ•˜๋‹ค๊ฐ€ ๋ญ”๊ฐ€ ๊ผฌ์˜€๋Š” ์ง€ ์•ˆํ’€๋ ค์„œ ์ฐพ์•„๋ดค๋‹ค...!

์Šคํƒ ์จ์„œ ๋‹ค์‹œ ํ’€์–ด๋ด์•ผ์ง€

 

1. ๋ฌธ์ž์—ด์„ ๊ฒ€์ƒ‰ํ•ด๊ฐ€๋ฉด์„œ C4์ค‘ 4๋ฅผ ๋งŒ๋‚ ๋•Œ๊นŒ์ง€ ๊ฒ€์ƒ‰์„ ํ•œ๋‹ค.

2. ํ˜„์žฌ ๊ฒ€์ƒ‰ํ•œ ๋ฌธ์ž๊ฐ€ 4๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ์Šคํƒ(๋ฐฐ์—ด๋กœ ํ‘œํ˜„๋จ)์— ๊ทธ ์ˆซ์ž๋ฅผ ๋„ฃ๋Š”๋‹ค.

3. 4๋ฅผ ๋งŒ๋‚ฌ๋‹ค๋ฉด ๊ฑฐ๊พธ๋กœ ๋‚ด๋ ค๊ฐ€๋ฉด์„œ ๋ฐฉ๊ธˆ์ „ ์ง€๋‚˜์ณ์˜จ๊ฒƒ์ด C ์˜€๋Š”์ง€๋ฅผ ํ™•์ธํ•œ๋‹ค.

4. ์ฆ‰ C4๋ฅผ ๋ฌธ์ž์—ด์—์„œ ์ฐพ์•„๋‚ธ๋‹ค.

5. ๋งŒ์•ฝ C4๋ฅผ ์ฐพ์•„๋ƒˆ๋‹ค๋ฉด C4 ์ค‘ C์— ํ•ด๋‹นํ•˜๋Š” ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ์ƒˆ๋กœ ์Šคํƒ์— ์Œ“๋Š”๋‹ค. (์ˆซ์ž๋ฅผ ๋ฎ์–ด์”Œ์šด๋‹ค๋Š” ์˜๋ฏธ)


์ฐธ๊ณ ๋ธ”๋กœ๊ทธ)
์ถœ์ฒ˜: https://simsimjae.tistory.com/40 

 

์ž‘์„ฑํ•œ ์ฝ”๋“œ

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
49
#include <iostream>
#include <string>
 
using namespace std;
 
string s1,s2;
char c[1000001];
 
int main(int argc, const char * argv[]) {
    // insert code here...
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    
    cin >> s1 >> s2;
    
    int k = 0// ์ธ๋ฑ์Šค
    for(int i=0; i<s1.size(); i++){
        c[k++= s1[i];
        
        int j = (int)s2.size();
        if(s1[i] == s2[--j]) //c4์ค‘ 4๋ถ€ํ„ฐ ๋น„๊ต๋ฅผ ์‹œ์ž‘ํ•œ๋‹ค.
        {
            bool check = false;
            int size = k-(int)s2.length();
            for(int m=k-1; m>=size; m--){
                if(c[m] == s2[j--]){
                    check = true;
                }
                else{
                    check = false;
                    break;
                }
            }
            if(check){
                k -= s2.size();
            }
        }
    }
    if(k==0)
        cout<<"FRULA"<<endl;
    else{
        for(int i=0; i<k; i++){
            cout << c[i];
        }
        cout << "\n";
    }
    return 0;
}
 
Colored by Color Scripter
๋ฐ˜์‘ํ˜•
Comments