QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#150820 | #6115. Blocks and Expressions | Sommohito# | AC ✓ | 2ms | 3548kb | C++20 | 1.7kb | 2023-08-26 12:58:58 | 2023-08-26 12:58:59 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#ifdef APURBA
#include "DEBUG_TEMPLATE.h"
#else
#define HERE
#define debug(args...)
#endif
#define ALL(x) x.begin(),x.end()
vector<string> getString(vector<string>s , int i1, int j1, int i2, int j2)
{
vector<string>ret;
for(int i=i1;i<=i2;i++)
{
string now = "";
for(int j=j1;j<=j2;j++)
{
now += s[i][j];
}
ret.push_back(now);
}
return ret;
}
ll solve(vector<string>s)
{
int pos = -1;
int n = s.size();
int m = s[0].size();
for(int i=0;i<m;i++)
{
if(s[0][i]!='.'){
assert(pos==-1);
pos = i;
}
}
assert(pos != -1);
if(s[0][pos]>='0' && s[0][pos]<='9')
{
return s[0][pos] - '0';
}
vector<string>a = getString(s, 1, 0, n-1, pos-1);
vector<string>b = getString(s, 1, pos+1, n-1, m-1);
ll x1 = solve(a);
ll x2 = solve(b);
if(s[0][pos]=='+')
{
return x1+x2;
}
else if(s[0][pos]=='-')
{
return x1-x2;
}
else{
assert(s[0][pos]=='*');
return x1*x2;
}
}
void TEST_CASES()
{
int n,m;
cin>>n>>m;
vector<string>s(n);
for(int i=0; i<n; i++)
{
cin>>s[i];
}
ll ans = solve(s);
cout<<ans<<"\n";
}
/*
*/
int32_t main()
{
#ifndef APURBA
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
#endif
//freopen("input.txt","r",stdin);
//freopen("out1.txt","w",stdout);
int t=1;
//cin>>t;
while(t--)
{
TEST_CASES();
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 3476kb
input:
1 1 5
output:
5
result:
ok 1 number(s): "5"
Test #2:
score: 0
Accepted
time: 0ms
memory: 3420kb
input:
2 3 .-. 9.2
output:
7
result:
ok 1 number(s): "7"
Test #3:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
4 9 ...*..... .-.....+. 9.4..*..5 ....7.2..
output:
95
result:
ok 1 number(s): "95"
Test #4:
score: 0
Accepted
time: 1ms
memory: 3420kb
input:
9 35 ...............................+... ...........*.....................*. .+.....................+........8.6 5........+...........-...+......... .......*..1........*..0.0....*..... ...+....5....*......8......+..9.... ..5..+......2..+..........4.9...... ....5.9.......7..*................. ..........
output:
34489
result:
ok 1 number(s): "34489"
Test #5:
score: 0
Accepted
time: 1ms
memory: 3488kb
input:
9 31 .....................+......... .................+.....+....... ...-...............*..2..-..... .+.....*..........7.3...7....+. 4.1..-.........-...........*..5 ....0.5......*..2.........8.8.. ...........*..8................ .........+..2.................. ........2.5....................
output:
516
result:
ok 1 number(s): "516"
Test #6:
score: 0
Accepted
time: 0ms
memory: 3440kb
input:
7 29 ...........+................. .......-.................*... ...*.....-.......+.........+. .-...*..0.2....*...*......8.2 5.7.2.1......-..1.2..-....... ............8.3.....8..*..... ......................3.1....
output:
148
result:
ok 1 number(s): "148"
Test #7:
score: 0
Accepted
time: 1ms
memory: 3484kb
input:
5 13 ...........-. .....+......8 .*.....*..... 0..+..0..+... ..8.2...0.6..
output:
-8
result:
ok 1 number(s): "-8"
Test #8:
score: 0
Accepted
time: 0ms
memory: 3436kb
input:
7 21 .......+............. .-.......*........... 4....-..5..........+. ...+..1....*........6 ..8.0.....2....+..... .............+...+... ............0.8.9.1..
output:
207
result:
ok 1 number(s): "207"
Test #9:
score: 0
Accepted
time: 1ms
memory: 3428kb
input:
5 13 .........*... ...-.......+. .*.....+..2.4 9.5..+..0.... ....6.1......
output:
228
result:
ok 1 number(s): "228"
Test #10:
score: 0
Accepted
time: 1ms
memory: 3544kb
input:
7 29 .................-........... ...........*.......-......... .......+.......+..7........-. .*.......*...-..1........+..1 0..-....6.0.7.6........-..1.. ..5..*...............-..1.... ....9.0.............4.8......
output:
-12
result:
ok 1 number(s): "-12"
Test #11:
score: 0
Accepted
time: 1ms
memory: 3488kb
input:
9 37 .....................*............... ...................*.......+......... ...........-........5..-...........+. .........+.....+......3..+.....*....5 .+........7..-...+......1.4..-...-... 2......*....9.3.3.1.........2.8.2.2.. .....+..8............................ ...+..6.........................
output:
1185
result:
ok 1 number(s): "1185"
Test #12:
score: 0
Accepted
time: 1ms
memory: 3440kb
input:
9 23 .-..................... 3..+................... ..3..............-..... .....+...............+. ....9..+...........-..8 ......4......*....9.5.. ...........+...+....... .........+..7.3.1...... ........4.9............
output:
-81
result:
ok 1 number(s): "-81"
Test #13:
score: 0
Accepted
time: 1ms
memory: 3512kb
input:
12 37 .................................+... ...............................*...+. ...........................-....5.0.1 .........................+...*....... ...................+......6.5.9...... ...+.................*............... .*.....+............7..*............. 4.4..-...........*....1.8......
output:
371
result:
ok 1 number(s): "371"
Test #14:
score: 0
Accepted
time: 0ms
memory: 3536kb
input:
3 5 ...+. .*..2 9.3..
output:
29
result:
ok 1 number(s): "29"
Test #15:
score: 0
Accepted
time: 1ms
memory: 3516kb
input:
6 15 .*............. 0....*......... ...+.....*..... ..7.0..-...+... ......5.8.5..-. ............7.5
output:
0
result:
ok 1 number(s): "0"
Test #16:
score: 0
Accepted
time: 0ms
memory: 3436kb
input:
5 11 .........+. .....+....7 .-.....+... 8..-..1.6.. ..3.4......
output:
23
result:
ok 1 number(s): "23"
Test #17:
score: 0
Accepted
time: 0ms
memory: 3540kb
input:
8 23 .+..................... 4....................+. .......-..............4 .....*.....+........... ...+..3..-.........-... ..5.9...4.1....-....5.. .............-...+..... ............5.1.8.3....
output:
59
result:
ok 1 number(s): "59"
Test #18:
score: 0
Accepted
time: 1ms
memory: 3412kb
input:
9 23 .*..................... 9....................+. ...................*..6 .......-............1.. .....+.....*........... ...+..8..+...-......... ..6.0...1.1.4....+..... ...............*..9.... ..............1.0......
output:
270
result:
ok 1 number(s): "270"
Test #19:
score: 0
Accepted
time: 1ms
memory: 3428kb
input:
2 3 .-. 8.4
output:
4
result:
ok 1 number(s): "4"
Test #20:
score: 0
Accepted
time: 1ms
memory: 3452kb
input:
5 13 ...-......... .*.......+... 0.4....+...-. .....+..6.8.1 ....4.8......
output:
-25
result:
ok 1 number(s): "-25"
Test #21:
score: 0
Accepted
time: 1ms
memory: 3488kb
input:
6 33 .................+............... .....+.....................*..... ...+.......+...........-.....+... .-..4..*.......*.....-...-..7..-. 0.9...4..+...-..7..*..1.9.1...4.6 ........9.4.7.5...2.8............
output:
96
result:
ok 1 number(s): "96"
Test #22:
score: 0
Accepted
time: 1ms
memory: 3540kb
input:
7 29 ...............+............. .........+.............+..... .-.........-.........*.....-. 5..*......7..*.....-..4..-..9 ..5..+......3.7..+..9...6.6.. ....1..+........0.0.......... ......2.1....................
output:
-74
result:
ok 1 number(s): "-74"
Test #23:
score: 0
Accepted
time: 1ms
memory: 3432kb
input:
6 17 ...*............. .-.........-..... 0.1......+.....-. .....*....0..-..4 ....0..-....9.9.. ......0.6........
output:
-4
result:
ok 1 number(s): "-4"
Test #24:
score: 0
Accepted
time: 0ms
memory: 3416kb
input:
6 33 ...............*................. .......+.................*....... .+.......+...........+.....*..... 7..*....6..-.......*...-..8..+... ..3..-....0..-...+..3.8.4...2..-. ....7.4.....7.2.7.8...........6.8
output:
0
result:
ok 1 number(s): "0"
Test #25:
score: 0
Accepted
time: 1ms
memory: 3404kb
input:
6 27 .............*............. .....+...............+..... .-.....*.......+.........+. 2..+..8....*..4..-.....+..0 ..9.3....*..0...1..*..7.5.. ........3.0.......6.3......
output:
10
result:
ok 1 number(s): "10"
Test #26:
score: 0
Accepted
time: 1ms
memory: 3436kb
input:
6 25 .........+............... .......*.........-....... .*......8....+.........+. 6....*.....*...-.....-..4 ...*..3...1.1.7.4..*..6.. ..8.7.............1.1....
output:
8069
result:
ok 1 number(s): "8069"
Test #27:
score: 0
Accepted
time: 1ms
memory: 3424kb
input:
6 15 .....+......... .+.....+....... 6..-..3..+..... ..7.7...4..-... ..........1..-. ............8.1
output:
7
result:
ok 1 number(s): "7"
Test #28:
score: 0
Accepted
time: 1ms
memory: 3436kb
input:
10 37 .*................................... 5......*............................. ...*.......-......................... ..4..-...-...........-............... ....7.8.0.6........*...............+. ...............-....1..+............0 .............*...+....8......*....... ............0.7.0.4......*.....
output:
-3120
result:
ok 1 number(s): "-3120"
Test #29:
score: 0
Accepted
time: 0ms
memory: 3540kb
input:
8 37 .......-............................. .*.................+................. 4....+...........*...*............... ...-..7......-....0.2............+... ..3.3....-.....-.............-.....-. ........9..-..9.6........*.....+..3.5 ..........8.8..........-...*..3.1.... ......................7.6.3.4...
output:
16
result:
ok 1 number(s): "16"
Test #30:
score: 0
Accepted
time: 1ms
memory: 3484kb
input:
8 37 .....................-............... .................*.................-. ...+...............+.........-......3 .*.....+..........4.5......-.....+... 0.4..*.........+.......*....0..*..8.. ....8.1....*....6.....1..*....4.8.... .........+...+..........7.1.......... ........6.5.7.4.................
output:
1251
result:
ok 1 number(s): "1251"
Test #31:
score: 0
Accepted
time: 0ms
memory: 3544kb
input:
8 37 .........................-........... ...........+.................*....... .........*.......+.........*.......-. .+........8..+.......-....2.0..+....0 0..*........8..-...*...-......6..+... ..3..-........0.1.2.9.8.1.......3.4.. ....0..+............................. ......1.5.......................
output:
-126
result:
ok 1 number(s): "-126"
Test #32:
score: 0
Accepted
time: 1ms
memory: 3544kb
input:
8 37 .....................+............... ...........-.............*........... .........-...+.........+...........+. .*........6.7..+......5.4....+......9 8......+......0..*.........-.....*... .....-..6.......0..*......4.9..-..2.. ...*..5...........9.5.........9.8.... ..0.9...........................
output:
49
result:
ok 1 number(s): "49"
Test #33:
score: 0
Accepted
time: 1ms
memory: 3548kb
input:
10 37 ...................................-. .............................*......5 ...+...........................-..... .*.....................+......4..*... 6.4....-.................-......1.0.. .....+.......+..........2..+......... ....4.7..-.......*........1.4........ ........2..-...+.....-.........
output:
-29
result:
ok 1 number(s): "-29"
Test #34:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
10 37 ...............................+..... .........................-.......-... .....................-.....+....1..+. .+.....................-..7..-....2.9 6..............*......0.7...7.8...... .......*...........*................. ...+.....+.......+..0................ ..5..+..8..+....1.1............
output:
-3
result:
ok 1 number(s): "-3"
Test #35:
score: 0
Accepted
time: 1ms
memory: 3452kb
input:
12 37 ...*................................. .-.................................+. 1.3..............................+..9 .............................*....3.. .......+.......................-..... .....*.....*..................9.6.... ....0.0..*.....*..................... ........5.3..*.....-...........
output:
-384
result:
ok 1 number(s): "-384"
Test #36:
score: 0
Accepted
time: 1ms
memory: 3440kb
input:
10 37 ...............................*..... ...........................*.....-... .-...........................-..4..+. 9....-......................2.8...7.6 ...-.................*............... ..8.6....-.............+............. .......+.......-......5..-........... ......8.7..*.......*....7.1....
output:
19980
result:
ok 1 number(s): "19980"
Test #37:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
12 37 .....+............................... ...*...............................+. .-..2..+............................7 0.3...2........................*..... ...........................*.....*... .......................+.....+..3.9.. .........-...............-..3.7...... ........1......*........1.6....
output:
-311037
result:
ok 1 number(s): "-311037"
Test #38:
score: 0
Accepted
time: 1ms
memory: 3488kb
input:
7 37 .................-................... ...........+.............-........... .........*...-.........*.......-..... ...+......5.8..-.....+..5..-.......-. .-.....-......4.2..*..0...3..*...-..0 9.7..+..0.........9.9.......8.5.6.1.. ....8.1..............................
output:
-386
result:
ok 1 number(s): "-386"
Test #39:
score: 0
Accepted
time: 0ms
memory: 3440kb
input:
7 37 .....................+............... .........+.....................-..... .+.............-.............*.....*. 7..*.......+.....-.....+......3..+..6 ..2....-..5..-..9..+..2..-......8.2.. .....+..8...6.4...2.8...4..-......... ....3.8...................3.5........
output:
-15
result:
ok 1 number(s): "-15"
Test #40:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
7 37 ...................*................. .............*.................-..... .........*.....-...........*.....+... .......-...-..8..+.....+.....+..9..+. ...-....6.9.0...0.3..+...-..4.9...1.6 .-...*..............5.1.5.3.......... 6.7.6.3..............................
output:
-99000
result:
ok 1 number(s): "-99000"
Test #41:
score: 0
Accepted
time: 1ms
memory: 3456kb
input:
7 37 ...............+..................... ...*.................*............... .-.........+.......-.......*......... 9.0....+.....+...-..5..*.....-....... .....+...-..5.1.6.3...4..-..3....*... ....8.7.4.4.............4.5....-...+. ..............................1.9.0.7
output:
661
result:
ok 1 number(s): "661"
Test #42:
score: 0
Accepted
time: 1ms
memory: 3428kb
input:
8 37 .....................*............... .......+.................*........... .....-...-.............*.....-....... .*....6.7..-..........3.6..+.....-... 9..+......7....*..........4.1..-...*. ..8.0........-...*............1.4.9.1 ............0.5.8..-................. ..................1.9...........
output:
118116
result:
ok 1 number(s): "118116"
Test #43:
score: 0
Accepted
time: 1ms
memory: 3432kb
input:
1 1 7
output:
7
result:
ok 1 number(s): "7"
Test #44:
score: 0
Accepted
time: 0ms
memory: 3476kb
input:
1 1 8
output:
8
result:
ok 1 number(s): "8"
Test #45:
score: 0
Accepted
time: 0ms
memory: 3440kb
input:
1 1 7
output:
7
result:
ok 1 number(s): "7"
Test #46:
score: 0
Accepted
time: 1ms
memory: 3400kb
input:
1 1 8
output:
8
result:
ok 1 number(s): "8"
Test #47:
score: 0
Accepted
time: 1ms
memory: 3480kb
input:
1 1 3
output:
3
result:
ok 1 number(s): "3"
Test #48:
score: 0
Accepted
time: 1ms
memory: 3492kb
input:
8 37 .......................*............. ...............*.............*....... .............*.......*.....*...*..... .......*......9..*....7..*..8.9..*... .....*...*......9..*....9.9.....9..*. .*....8.7..*......8.9.............9.7 9..*......9.9........................ ..7.8...........................
output:
308616905200472064
result:
ok 1 number(s): "308616905200472064"
Test #49:
score: 0
Accepted
time: 1ms
memory: 3428kb
input:
8 37 ...............................*..... .............*.....................*. .........*.......*...............*..7 .*.........*...*.............*..7.8.. 8....*....9.8.9.9....*........9...... ...*...*...........*.....*........... ..7.9.9.8.........7.8..*...*......... ......................7.8.9.9...
output:
189657576858451968
result:
ok 1 number(s): "189657576858451968"
Test #50:
score: 0
Accepted
time: 1ms
memory: 3412kb
input:
8 37 .............................*....... ...............*.................*... .*.....................*.......*...*. 9..*.............*.........*..8.9.8.8 ..7......*......7....*...*..8........ .......*.....*.....*..8.8.7.......... .....*..9..*..9...7.8................ ....7.8...9.7...................
output:
116552255737430016
result:
ok 1 number(s): "116552255737430016"
Test #51:
score: 0
Accepted
time: 1ms
memory: 3460kb
input:
9 37 .*................................... 8....................*............... ...................*...........*..... ...............*....9..*.........*... ...........*.....*....9..*......7..*. ...*.........*..9.7.....9..*......7.7 ..8....*....9.9...........8..*....... .....*...*..................9...
output:
240035370711478272
result:
ok 1 number(s): "240035370711478272"
Test #52:
score: 0
Accepted
time: 1ms
memory: 3544kb
input:
7 37 ...................*................. .......*.......................*..... .*.............*.....*.............*. 8....*.......*...*..7......*.....*..7 ...*..7....*..9.7.8....*.....*..9.7.. ..7.7....*..9.........9..*..8.7...... ........7.8.............9.9..........
output:
87841018911485952
result:
ok 1 number(s): "87841018911485952"