-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path133B_Unary.cpp
More file actions
61 lines (51 loc) · 1.08 KB
/
133B_Unary.cpp
File metadata and controls
61 lines (51 loc) · 1.08 KB
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
50
51
52
53
54
55
56
57
58
59
60
61
//* 205730470 May/13/2023 21:36UTC+7 Minh4893IT B - Unary GNU C++14 Accepted 30 ms 0 KB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ss stringstream
#define uset unordered_set
#define umap unordered_map
#define mmap multimap
#define mset multiset
#define pq priority_queue
#define endl "\n"
#define LLMAX INT64_MAX
#define GET(var) getline(cin, var)
#define EACH(x, a) for (auto &x : a)
#define IF(cond, t, f) (cond ? t : f)
void OFILE(const char *finp, const char *fout)
{
freopen(finp, "r", stdin), freopen(fout, "w", stdout);
}
map<char, string> dict = {
{'>', "1000"},
{'<', "1001"},
{'+', "1010"},
{'-', "1011"},
{'.', "1100"},
{',', "1101"},
{'[', "1110"},
{']', "1111"}};
void solve()
{
string s;
GET(s);
string conv;
for (auto c : s)
conv += dict[c];
int res = 0;
for (auto c : conv)
{
res *= 2;
res += c == '1';
res %= 1000003;
}
cout << res;
}
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie();
solve();
return 0;
}