# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
494151 | 2021-12-14T12:55:33 Z | Tsiannis | DNA 돌연변이 (IOI21_dna) | C++17 | 46 ms | 9304 KB |
#include "dna.h" using namespace std; typedef long long ll; #define maxn 100005 ll a1[maxn],c1[maxn],t1[maxn],a2[maxn],c2[maxn],t2[maxn],diff[maxn]; void init(string a,string b) { for (int i=0;i<a.size();i++) { a1[i+1]=a1[i]; c1[i+1]=c1[i]; t1[i+1]=t1[i]; a2[i+1]=a2[i]; c2[i+1]=c2[i]; t2[i+1]=t2[i]; diff[i+1]=diff[i]; if (a[i]=='A') a1[i+1]=a1[i]+1; else if (a[i]=='C') c1[i+1]=c1[i]+1; else t1[i+1]=t1[i]+1; if (b[i]=='A') a2[i+1]=a2[i]+1; else if (b[i]=='C') c2[i+1]=c2[i]+1; else t2[i+1]=t2[i]+1; if (a[i]!=b[i]) {diff[i+1]=diff[i]+1;} } } int get_distance(int x,int y) { int pla1=a1[y+1]-a1[x]; int plc1=c1[y+1]-c1[x]; int plt1=t1[y+1]-t1[x]; int pla2=a2[y+1]-a2[x]; int plc2=c2[y+1]-c2[x]; int plt2=t2[y+1]-t2[x]; int d=diff[y+1]-diff[x]; if (pla1!=pla2||plc1!=plc2||plt1!=plt2) return -1; else return (d/2+d%2); }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 41 ms | 8836 KB | Output is correct |
2 | Correct | 39 ms | 8888 KB | Output is correct |
3 | Correct | 36 ms | 8404 KB | Output is correct |
4 | Correct | 46 ms | 8916 KB | Output is correct |
5 | Correct | 1 ms | 204 KB | Output is correct |
6 | Correct | 0 ms | 204 KB | Output is correct |
7 | Correct | 1 ms | 204 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Correct | 0 ms | 204 KB | Output is correct |
4 | Correct | 7 ms | 6476 KB | Output is correct |
5 | Correct | 5 ms | 6476 KB | Output is correct |
6 | Correct | 8 ms | 6416 KB | Output is correct |
7 | Correct | 4 ms | 6064 KB | Output is correct |
8 | Correct | 5 ms | 6476 KB | Output is correct |
9 | Correct | 5 ms | 6476 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Correct | 0 ms | 204 KB | Output is correct |
4 | Correct | 7 ms | 6476 KB | Output is correct |
5 | Correct | 5 ms | 6476 KB | Output is correct |
6 | Correct | 8 ms | 6416 KB | Output is correct |
7 | Correct | 4 ms | 6064 KB | Output is correct |
8 | Correct | 5 ms | 6476 KB | Output is correct |
9 | Correct | 5 ms | 6476 KB | Output is correct |
10 | Correct | 45 ms | 8860 KB | Output is correct |
11 | Correct | 43 ms | 8968 KB | Output is correct |
12 | Correct | 44 ms | 8892 KB | Output is correct |
13 | Correct | 41 ms | 9024 KB | Output is correct |
14 | Correct | 40 ms | 9304 KB | Output is correct |
15 | Correct | 37 ms | 9216 KB | Output is correct |
16 | Correct | 36 ms | 8844 KB | Output is correct |
17 | Correct | 37 ms | 8928 KB | Output is correct |
18 | Correct | 34 ms | 9188 KB | Output is correct |
19 | Correct | 37 ms | 8780 KB | Output is correct |
20 | Correct | 33 ms | 8972 KB | Output is correct |
21 | Correct | 37 ms | 9216 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 204 KB | Output is correct |
2 | Correct | 1 ms | 204 KB | Output is correct |
3 | Correct | 0 ms | 204 KB | Output is correct |
4 | Correct | 7 ms | 6476 KB | Output is correct |
5 | Correct | 5 ms | 6476 KB | Output is correct |
6 | Correct | 8 ms | 6416 KB | Output is correct |
7 | Correct | 4 ms | 6064 KB | Output is correct |
8 | Correct | 5 ms | 6476 KB | Output is correct |
9 | Correct | 5 ms | 6476 KB | Output is correct |
10 | Correct | 6 ms | 5960 KB | Output is correct |
11 | Correct | 5 ms | 6476 KB | Output is correct |
12 | Incorrect | 5 ms | 6060 KB | Output isn't correct |
13 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 41 ms | 8836 KB | Output is correct |
2 | Correct | 39 ms | 8888 KB | Output is correct |
3 | Correct | 36 ms | 8404 KB | Output is correct |
4 | Correct | 46 ms | 8916 KB | Output is correct |
5 | Correct | 1 ms | 204 KB | Output is correct |
6 | Correct | 0 ms | 204 KB | Output is correct |
7 | Correct | 1 ms | 204 KB | Output is correct |
8 | Correct | 0 ms | 204 KB | Output is correct |
9 | Correct | 1 ms | 204 KB | Output is correct |
10 | Correct | 0 ms | 204 KB | Output is correct |
11 | Correct | 7 ms | 6476 KB | Output is correct |
12 | Correct | 5 ms | 6476 KB | Output is correct |
13 | Correct | 8 ms | 6416 KB | Output is correct |
14 | Correct | 4 ms | 6064 KB | Output is correct |
15 | Correct | 5 ms | 6476 KB | Output is correct |
16 | Correct | 5 ms | 6476 KB | Output is correct |
17 | Correct | 45 ms | 8860 KB | Output is correct |
18 | Correct | 43 ms | 8968 KB | Output is correct |
19 | Correct | 44 ms | 8892 KB | Output is correct |
20 | Correct | 41 ms | 9024 KB | Output is correct |
21 | Correct | 40 ms | 9304 KB | Output is correct |
22 | Correct | 37 ms | 9216 KB | Output is correct |
23 | Correct | 36 ms | 8844 KB | Output is correct |
24 | Correct | 37 ms | 8928 KB | Output is correct |
25 | Correct | 34 ms | 9188 KB | Output is correct |
26 | Correct | 37 ms | 8780 KB | Output is correct |
27 | Correct | 33 ms | 8972 KB | Output is correct |
28 | Correct | 37 ms | 9216 KB | Output is correct |
29 | Correct | 6 ms | 5960 KB | Output is correct |
30 | Correct | 5 ms | 6476 KB | Output is correct |
31 | Incorrect | 5 ms | 6060 KB | Output isn't correct |
32 | Halted | 0 ms | 0 KB | - |