QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#196839#5608. Determining Nucleotide AssortmentsKKT89AC ✓7ms4172kbC++171.7kb2023-10-02 00:33:042023-10-02 00:33:04

Judging History

你现在查看的是最新测评结果

  • [2023-10-02 00:33:04]
  • 评测
  • 测评结果:AC
  • 用时:7ms
  • 内存:4172kb
  • [2023-10-02 00:33:04]
  • 提交

answer

#pragma GCC optimize("Ofast")
#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef unsigned long long int ull;

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
ll myRand(ll B) {
    return (ull)rng() % B;
}
inline double time() {
    return static_cast<long double>(chrono::duration_cast<chrono::nanoseconds>(chrono::steady_clock::now().time_since_epoch()).count()) * 1e-9;
}

int main(){
    cin.tie(nullptr);
    ios::sync_with_stdio(false);
    string s; cin >> s;
    int n = s.size();
    vector<vector<int>> sum(4, vector<int>(n+1));
    for (int i = 0; i < n; ++i) {
        if (s[i] == 'A') {
            sum[3][i+1] = 1;
        }
        else if (s[i] == 'T') {
            sum[2][i+1] = 1;
        }
        else if (s[i] == 'G') {
            sum[1][i+1] = 1;
        }
        else {
            sum[0][i+1] = 1;
        }
        for (int j = 0; j < 4; ++j) {
            sum[j][i+1] += sum[j][i];
        }
    }
    int q; cin >> q;
    while (q--) {
        int l,r; cin >> l >> r;
        vector<pair<int,int>> v;
        for (int i = 0; i < 4; ++i) {
            v.push_back({sum[i][r]-sum[i][l-1], i});
        }
        sort(v.rbegin(), v.rend());
        string res = "";
        for (int i = 0; i < 4; ++i) {
            if (v[i].second == 0) {
                res += 'C';
            }
            else if (v[i].second == 1) {
                res += 'G';
            }
            else if (v[i].second == 2) {
                res += 'T';
            }
            else {
                res += 'A';
            }
        }
        cout << res << "\n";
    }
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3424kb

input:

TATATGCTCT
3
1 10
6 10
6 6

output:

TACG
TCGA
GATC

result:

ok 3 lines

Test #2:

score: 0
Accepted
time: 7ms
memory: 4164kb

input:

CAGCCTAGAGTGGCAGTACCTTGACGACCAAGTGGGCAGTATCAGATTTTGACAGTATTCTATTGGATCTCCGTTACTACAGTCCATAGATTTTCCAACACGATCGGGGTTCTAGGGGAGGTTGAATCAAACTGGTGAGGTTTACACTCGAAGCAATGGCCACGACGGTTTCCGGATCGGCGGTAAGATTGGTAGGATCAAGTAGGAAAGACCGCTCTATTCTTTCCAATACCCTAAAACGGATACCCGCGGTTCTTGCATTGACGGAGGCAATACCGCAGCCTACGAAACTGTATTTGT...

output:

AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGCT
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
AGTC
...

result:

ok 25000 lines

Test #3:

score: 0
Accepted
time: 3ms
memory: 3704kb

input:

GGTGTGAAGGCGCACTACTGCCGTACGTCGACAGCCCAGATACATAAAGGACATACCTCGCCTTTCCAGCTTTACACCTTCAGAGTCGAAGCTGGTGTAAGACCAGCTGTCCTATCTGTCCCCATTTTGCAGGAGACGGAGTGCGACGGGCTGAGTTATGCGGGATTCAGATGCTTATTACAACTTGGGGGCTATGAAAACCTGGTAAGAGATAGAAGCTCCGCCCCCGACCTTATGACACCAGACCAGCGCCTGGTACACGGATCGAGCGGTGATATTTCCACTAAATTCAAGAAGCCA...

output:

CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
CGAT
...

result:

ok 10000 lines

Test #4:

score: 0
Accepted
time: 3ms
memory: 3672kb

input:

TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT...

output:

TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
TAGC
...

result:

ok 10000 lines

Test #5:

score: 0
Accepted
time: 1ms
memory: 3508kb

input:

A
1
1 1

output:

ATGC

result:

ok single line: 'ATGC'

Test #6:

score: 0
Accepted
time: 0ms
memory: 3420kb

input:

T
1
1 1

output:

TAGC

result:

ok single line: 'TAGC'

Test #7:

score: 0
Accepted
time: 0ms
memory: 3552kb

input:

G
1
1 1

output:

GATC

result:

ok single line: 'GATC'

Test #8:

score: 0
Accepted
time: 0ms
memory: 3484kb

input:

C
1
1 1

output:

CATG

result:

ok single line: 'CATG'

Test #9:

score: 0
Accepted
time: 1ms
memory: 3428kb

input:

AAAAAAAAAAAA
1
1 12

output:

ATGC

result:

ok single line: 'ATGC'

Test #10:

score: 0
Accepted
time: 1ms
memory: 3508kb

input:

TTTTTTTTTTTT
1
1 12

output:

TAGC

result:

ok single line: 'TAGC'

Test #11:

score: 0
Accepted
time: 0ms
memory: 3540kb

input:

GGGGGGGGGGGG
1
1 12

output:

GATC

result:

ok single line: 'GATC'

Test #12:

score: 0
Accepted
time: 0ms
memory: 3508kb

input:

CCCCCCCCCCCC
1
1 12

output:

CATG

result:

ok single line: 'CATG'

Test #13:

score: 0
Accepted
time: 0ms
memory: 3548kb

input:

TTTTTTAAAAAA
1
1 12

output:

ATGC

result:

ok single line: 'ATGC'

Test #14:

score: 0
Accepted
time: 1ms
memory: 3504kb

input:

GGGGGGAAAAAA
1
1 12

output:

AGTC

result:

ok single line: 'AGTC'

Test #15:

score: 0
Accepted
time: 1ms
memory: 3428kb

input:

CCCCCCAAAAAA
1
1 12

output:

ACTG

result:

ok single line: 'ACTG'

Test #16:

score: 0
Accepted
time: 0ms
memory: 3436kb

input:

GGGGGGTTTTTT
1
1 12

output:

TGAC

result:

ok single line: 'TGAC'

Test #17:

score: 0
Accepted
time: 1ms
memory: 3516kb

input:

CCCCCCTTTTTT
1
1 12

output:

TCAG

result:

ok single line: 'TCAG'

Test #18:

score: 0
Accepted
time: 0ms
memory: 3508kb

input:

CCCCCCGGGGGG
1
1 12

output:

GCAT

result:

ok single line: 'GCAT'

Test #19:

score: 0
Accepted
time: 1ms
memory: 3544kb

input:

GGGGTTTTAAAA
1
1 12

output:

ATGC

result:

ok single line: 'ATGC'

Test #20:

score: 0
Accepted
time: 0ms
memory: 3508kb

input:

CCCCTTTTAAAA
1
1 12

output:

ATCG

result:

ok single line: 'ATCG'

Test #21:

score: 0
Accepted
time: 1ms
memory: 3580kb

input:

CCCCGGGGAAAA
1
1 12

output:

AGCT

result:

ok single line: 'AGCT'

Test #22:

score: 0
Accepted
time: 0ms
memory: 3440kb

input:

CCCCGGGGTTTT
1
1 12

output:

TGCA

result:

ok single line: 'TGCA'

Test #23:

score: 0
Accepted
time: 0ms
memory: 3504kb

input:

CCCGGGTTTAAA
1
1 12

output:

ATGC

result:

ok single line: 'ATGC'

Test #24:

score: 0
Accepted
time: 2ms
memory: 4172kb

input:

TGGTTAGAGGCGCCGACTTTCAGACGAATGTAAAGTGGAACCTCACTCCTATCGAAATAAGCAGAATCGGAGCTGGCTTGTTGGTCGAACGGAGCCCGTGTGCGGTCTTACGTAGCTCCATGAATCTGGGGATCAGGAGTGTGAACAGTCTCGGAAAACATACGTTGTTAATGTTGGCGACGTATGCCTATACCCAGCAGGCGACCAAGGGGGCAGACAAAGAGAATGGAGGGGCACCGTTACGCTTGAACGGCGACCGCGCTCGGAAACTCGAGTAGCCTTTGCGCATTACTTTTCAGT...

output:

GTCA
GATC
GACT
TGCA
AGCT
TGCA
TGCA
GACT
GCAT
CAGT

result:

ok 10 lines

Test #25:

score: 0
Accepted
time: 0ms
memory: 4148kb

input:

GGGTTCGTCCAAAGCCCAGACATATCTCCCCATGATCGCAGTCGGGATGGCTTAATTCTACGCTGTCGTTCTCAATATTATTTTCGCTCAGGACTCAACGGAATCCTGGCTGTATTCAACACGACAAAGAAGGTACCCCCGCTCTTCGATTCCTTGCTGACAACTTAGCCGGCCGGAAAGCGGCCTCCGGTCGTCAATCTTGCACCTGAAGGAAACCTATACCTGCTACCACGTATGATACTCTAATCTCATTTCGGCACTGTCGTTGTTAGTGTGTGTTGTTGCGACCTGGTGGTCGAA...

output:

CGTA
ATGC
CAGT
GCAT
CGAT
CAGT
ACGT
CGAT
CAGT
CGAT

result:

ok 10 lines

Test #26:

score: 0
Accepted
time: 1ms
memory: 3900kb

input:

AGCTTATCAAATACTGGCCCTAAGCTGATCCTTTAAGCGACAGTTTTGCCGACATTTACTCAAGACATCAGAGGACCGGCACAGGTCCACGCTGATTTCTAGGATACGATTCGGCCATCCGAAATAGATGTGTTACTAAGAGGGGGCCTTGGGTTCCACATGAAATCGGCGATTCCAATGAATAATAGGGACTTCCGAGATTCTCGCAGGGCAAGGGCAGAAAAACCTAAATGACCCCCAACCCTGCTAATTTCAGAACGATATGGTATCTCTACTGTATTAATCTACCGGACGCGAACT...

output:

ATGC
GTCA
GTCA
CGTA
ATCG
CGTA
CGTA
CGTA
GCTA
GACT

result:

ok 10 lines

Test #27:

score: 0
Accepted
time: 1ms
memory: 3556kb

input:

ATGCGGTTTTACTGGAAGGGTATCCCACTTAGGTAATATGCATGTGAGATAACAAAAGTCAACGCATAGTTATTAATTAACGCTGGATAGAAAGCGAGAGGTACGAAATGTATGTGCTATGTGATCCTTAGCTAGTACTCCGAAGACGGTTAATTGATTCAGGTACCCTTTAGCAAAACTGACCGTAAAGGAGAGAAGGACAAGCCTGGGGCGAATCGTCCCCGTGACGGATATAGCAACATTACACGTTTATATCCGAGGTAGTATCGGCTGATACATGCTATTGATGTAGCATTTCGA...

output:

TGAC
ATGC
TACG
ACTG
GTAC
TCGA
TACG
TAGC
TACG
TACG

result:

ok 10 lines

Test #28:

score: 0
Accepted
time: 1ms
memory: 3668kb

input:

ATTTAGTTCTCGGTGGCTAAATCTGTATCACTGTTACACCTTCCAAATTAAATGAGCGCCGCTTTAGTCGATTTAATGGTATATCTAACAAACATTACCGCGGAGTTGCTACGGGGAAGGATAGCGTGCCAACCACCATGGCAGCACTAACAGTGCTCGGGAGTCGGACAGGGTAACTGTGCCAAATCCCGTCGTGTGCGTTTACATCCACCCCCCTGAACCGATTTAAGTGACCTTTATTTATCACGACCAACGCGTCTGCTCTGGGGCCCATTAAGCTGCAACGCGGATAGATGCTCC...

output:

TACG
TCAG
TAGC
TCAG
TGCA
ATCG
TCGA
TCAG
GACT
TGAC

result:

ok 10 lines

Test #29:

score: 0
Accepted
time: 1ms
memory: 3684kb

input:

TGCGTCCCCTGGCTAAGTGATAGGATAATCTCCATATCGCGTTGTATAGGATGCACTAAGTGTACCACAACACGATGCACCTGAGCATGAAGAAGTTGAGACTGAGTTATCGCAGAGAACTCGGCCTTTCTCCAGCCCGGCGTGCGAGAGGCACGACCGCAATATTTGACCCGCTGGTAACAGAAGACTTAGCTCCAAGGTGAGAACTGCCCTGGGATTAGTCCAGGGTGATTGTGCGCCCTCCACCCGACCCGCATTTCGTCAAATGGACGTAACACATTAACATTTGGTGACGGCCAA...

output:

TCGA
TCGA
TCGA
TCGA
TGCA
TGCA
TCGA
CTGA
TACG
TCGA

result:

ok 10 lines

Test #30:

score: 0
Accepted
time: 1ms
memory: 3632kb

input:

CAACTGCAGCCCTTTAACCGAGCCCAGAGGAGGATTACAAGCTTTCGTCAGGTGCGACTCCAAACGTTACGCGGTATGGCTTTCCTAAGTCCAGTCCCCGCGTAAGCGGCAGTAATCAGTTGCGTTGGCCAACAGCCTGGCCGGCACTTCCTCTCTCTTGACATAGGGTCAAGCAGTTGGCGATTCATGTAACTTCTAGCTACCAGGCGCCTCAATCGGGAAACTCTGGAGTGACGACAGCACGTAGCTTCTTAGTATGGAACAGGATATGGAAATTGGCCAGAATTCCTGTTTACGACT...

output:

GTCA
CTAG
ATCG
CTAG
GTAC
CTAG
CGTA
CATG
CTAG
TACG

result:

ok 10 lines

Test #31:

score: 0
Accepted
time: 0ms
memory: 3932kb

input:

AGGTTATGCCCACGAAGTCCAGATGTGCTCAGTACGCATCATACGCTCGCTCGGGCCTTTGGTTCCACGCGGACGTCATCTTGTGCGGGGAGTAAAGTTATCTTTTCCCGTCTTCGTTACACGTACCATTCGGCCCACTTGTACTGCGGCATCCATCTGGAAAATGTACCGGGAGCAAACTATGGGGATCGGCCCCGACTTCATCCCCCGGGTAGGGCACACTCCAGTAGCAGAGGGTACCCTCGGCGCATCCACAATAGTCGGTCCCGACGTTACGGGACGGCATCCTGTCCCATCATA...

output:

CGTA
TCGA
TGCA
CAGT
TGCA
GCAT
CGTA
CGTA
CGTA
CGAT

result:

ok 10 lines

Test #32:

score: 0
Accepted
time: 0ms
memory: 3680kb

input:

TCGATACATTTATGTTTGCCGTCTTACTCCCCTCTGGTGTCCGTTCGATCGGGGATCGTCACTTGTTCTGCTAAAGAGTCTCGGGATTGGTTGAAAGTACAGCTCAGGTGTAACTAGTGGCCGGCTCGAGATAACTGCCAAATCTCTATTCCCTTGACAACTCACTAAGACAAGTTAACGGGACGTACGCGAGTATGCACAGTTAATGATTACCGGAAACGAATCTGTCCCAGACCGGCCCGATCGAACTTAAAGTGCGAATACGTAATAATTCTTACCTTTCAGGGTTATTGGATCTGA...

output:

ATCG
ATGC
TAGC
GCTA
GATC
GACT
CGAT
TGAC
GTAC
GATC

result:

ok 10 lines

Test #33:

score: 0
Accepted
time: 0ms
memory: 4112kb

input:

ACTCGACAATTAGAGTCTAATAGACCGGGACAGAGTTGTGGACTAGAGACAAATCTAAAAGGCGTGTGCGCCCAGGGTTGCCTCCAGTCAGTCCGTGTCGTACCCTAGTAGCTCTAGCCAAGAATTCATTGTTGTGGCTTCACCTCGACAAGACGCCTTCCAAGATGCGGGTGTAATAGGATCGGGCACAATCGCTTTTCGGCTTGACAATCGGATAGAGCGTTGCTAGCCGGTCTGTCTGATCGATAACTACTTCGAAAAGCCCTACCAGGCGATGGGTGGTAATTTTTTAATATTCAA...

output:

ATCG
ATCG
AGCT
AGCT
ATCG
AGTC
AGTC
CGAT
GTCA
GCAT

result:

ok 10 lines