답안 #998137

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
998137 2024-06-13T10:24:49 Z cpdreamer Bliskost (COI23_bliskost) C++17
0 / 100
1 ms 344 KB
#include <bits/stdc++.h>
#include <climits>
#include <ext/pb_ds/assoc_container.hpp>
#include <utility>
using namespace __gnu_pbds;
using namespace std;

typedef tree<int,null_type,less<int>,rb_tree_tag,
        tree_order_statistics_node_update> indexed_set;
const int max_n=INT_MAX;
typedef long long  ll;
#define LLM LONG_LONG_MAX
#define pb push_back
#define F first
#define P pair
#define L length()
#define all(v) v.begin(),v.end()
#define V vector
#define S second
const long long MOD = 99824433; // 1e9 + 7

void file(){
    freopen("input.txt.txt","r",stdin);
    freopen("output.txt.txt","w",stdout);
}
void setio(string s) {
    freopen((s + ".in").c_str(), "r", stdin);
    freopen((s + ".out").c_str(), "w", stdout);
}
struct project{
    int start;
    int end;
    int v;
};
bool sorted(project a,project b){
    return a.end<b.end;
}
void check(string s,string t,int n){
    for(int i=0;i<n-1;i++){
        int index_s=int(s[i])-int('a');
        int index_s_1=int(s[i+1])-int('a');
        int index_t=int(t[i])-int('a');
        int diff=index_t-index_s;
        index_s=(index_s+diff+26)%26;
        index_s_1=(index_s_1+diff+26)%26;
        s[i]=char(int('a')+index_s);
        s[i+1]=char(int('a')+index_s_1);
    }
    if(s[n-1]==t[n-1])
        cout<<"da"<<endl;
    else
        cout<<"ne"<<endl;
}
int char_diff(char a,char b){
    int index_a=int(a)-int('a');
    int index_b=int(b)-int('a');
    int diff=(index_b-index_a+26)%26;
    return diff;
}
void solve() {
    int n,q;
    cin>>n>>q;
    string s;
    cin>>s;
    string t;
    cin>>t;
    int sign[n];
    int value[n];
    sign[n-1]=1;
    for(int i=n-2;i>=0;i--){
        sign[i]=-1*sign[i+1];
    }
    ll c=0;
    for(int i=0;i<n;i++){
        value[i]=char_diff(s[i],t[i]);
        c+=value[i]*sign[i];
    }
    if(c==0)
        cout<<"da"<<endl;
    else
        cout<<"ne"<<endl;
    while(q--){
        int pos;
        char ch;
        cin>>pos>>ch;
        pos--;
        s[pos]=ch;
        c-=value[pos]*sign[pos];
        value[pos]=char_diff(s[pos],t[pos]);
        c+=value[pos]*sign[pos];
        if(c==0)
            cout<<"da"<<endl;
        else
            cout<<"ne"<<endl;
    }
}
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    //file();
    solve();
    return 0;
}

Compilation message

Main.cpp: In function 'void file()':
Main.cpp:23:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   23 |     freopen("input.txt.txt","r",stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:24:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |     freopen("output.txt.txt","w",stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp: In function 'void setio(std::string)':
Main.cpp:27:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |     freopen((s + ".in").c_str(), "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Main.cpp:28:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   28 |     freopen((s + ".out").c_str(), "w", stdout);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Output isn't correct
2 Halted 0 ms 0 KB -