답안 #1020991

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1020991 2024-07-12T12:39:48 Z ajay 고장난 휴대전화기 (COCI14_mobitel) C++14
50 / 50
1 ms 604 KB
/* Ajay Jadhav */
 
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <deque>
#include <vector>
#include <cstdlib>
#include <iomanip>
#include <cmath>
#include <queue>
#include <map>
#include <set>
#include <stack>
#include <ctime>
#include <string.h>
#include <climits>
#include <cstring>
using namespace std;
 
 
#define ll          long long
#define pb          push_back
#define pii         pair<int,int>
#define vi          vector<int>
#define vii         vector<pii>
#define mi          map<int,int>
#define mii         map<pii,int>
#define all(a)      (a).begin(),(a).end()
#define x           first
#define y           second
#define sz(x)       (int)x.size()
#define hell        1000000007
#define rep(i,a,b)  for(int i=a;i<b;i++)
#define endl        '\n'
 
 
 
void solve()
{
    map<char, pair<int, int>> behaviours = {
    {' ', {1,1}},
    {'a', {2,1}},
    {'b', {2,2}},
    {'c', {2,3}},
    {'d', {3,1}},
    {'e', {3,2}},
    {'f', {3,3}},
    {'g', {4,1}},
    {'h', {4,2}},
    {'i', {4,3}},
    {'j', {5,1}},
    {'k', {5,2}},
    {'l', {5,3}},
    {'m', {6,1}},
    {'n', {6,2}},
    {'o', {6,3}},
    {'p', {7,1}},
    {'q', {7,2}},
    {'r', {7,3}},
    {'s', {7,4}},
    {'t', {8,1}},
    {'u', {8,2}},
    {'v', {8,3}},
    {'w', {9,1}},
    {'x', {9,2}},
    {'y', {9,3}},
    {'z', {9,4}},
};
    int touches[10];
    int x;
    rep(i, 1, 10)
    {
        cin >> x;
        touches[x] = i;
    }
 
 
    string s;
    cin>>s;
 
    int lastTouch = 0;
 
    for(char c : s)
    {
        if(behaviours[c].first == lastTouch)
            cout << '#';
        lastTouch = behaviours[c].first;
 
        for(int i = 0; i < behaviours[c].second; i++) cout << touches[behaviours[c].first];
 
    }
 
    cout << '\n'; 
};

 
signed main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    // cin>>t;
    while (t--)
    {
        solve();
    }
    return 0;
}

# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 456 KB Output is correct
9 Correct 1 ms 344 KB Output is correct
10 Correct 0 ms 604 KB Output is correct