답안 #570150

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
570150 2022-05-28T19:29:47 Z saarang123 Programiranje (COCI17_programiranje) C++17
80 / 80
88 ms 1908 KB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
std::mt19937 rng((int) std::chrono::steady_clock::now().time_since_epoch().count());
signed main() {
    std::ios::sync_with_stdio(0);
    std::cin.tie(0);
    string s; cin >> s;
    int n = s.size();
    vector<vector<int>> f(26);
    for(int i = 0; i < n; i++)
    	f[s[i] - 'a'].push_back(i);
    auto cnt = [&] (int i, int j, int c) {
    	return upper_bound(f[c].begin(), f[c].end(), j) 
    			- upper_bound(f[c].begin(), f[c].end(), i - 1);
    };
    int q; cin >> q;
    while(q--) {
    	int a, b, c, d;
    	cin >> a >> b >> c >> d;
    	a--, b--, c--, d--;
    	bool okay = true;
    	for(int i = 0; i < 26 && okay; i++)
    		if(cnt(a, b, i) != cnt(c, d, i))
    			okay = false;
    	cout << (okay ? "DA" : "NE") << '\n';
    }
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 340 KB Output is correct
2 Correct 2 ms 340 KB Output is correct
3 Correct 1 ms 340 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Correct 2 ms 340 KB Output is correct
6 Correct 81 ms 1872 KB Output is correct
7 Correct 88 ms 1800 KB Output is correct
8 Correct 85 ms 1888 KB Output is correct
9 Correct 79 ms 1908 KB Output is correct
10 Correct 82 ms 1780 KB Output is correct