제출 #201083

#제출 시각아이디문제언어결과실행 시간메모리
201083etahaPassword (RMI18_password)C++14
100 / 100
754 ms672 KiB
#include<bits/stdc++.h> using namespace std; #define mods 1000000007 #define pb push_back #define mp make_pair #define st first #define nd second typedef long long int lint; typedef unsigned long long int ulint; typedef pair<lint,lint> pii; int query(string q); int dizi[30]; string sifre=""; string ekle(string s,char c,int ind){ int i; string ret; for(i=0;i<ind;i++) ret+=s[i]; ret+=c; for(;i<s.size();i++) ret+=s[i]; //cout<<c<<" "<<ret<<" "<<query(ret)<<endl; return ret; } string merge(int l,int r){ int i,j,k; string ret; if(l==r){ for(i=0;i<dizi[l];i++) ret+='a'+l; return ret; }else{ string cev1,cev2; int m=l+(r-l)/2; cev1=merge(l,m); cev2=merge(m+1,r); //cout<<cev1<<" "<<cev2<<endl; int son=0; for(j=0;j<=cev1.size() && son<cev2.size();j++){ if(query(ekle(cev1,cev2[son],j))==cev1.size()+1) cev1=ekle(cev1,cev2[son],j), son++; } return cev1; } } string guess(int n,int s){ int i,j,k; int ek=0,son=1; for(j=0;j<s;j++){ string a; for(i=0;i<n;i++) a+='a'+j; dizi[j]=query(a); if(dizi[j]==n) return a; //cout<<(char)('a'+j)<<" "<<dizi[j]<<endl; } sifre=merge(0,s-1); // int temp=query(sifre); //cout<<sifre<<endl; //cout<<temp<<endl; return sifre; }

컴파일 시 표준 에러 (stderr) 메시지

password.cpp: In function 'std::__cxx11::string ekle(std::__cxx11::string, char, int)':
password.cpp:21:8: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(;i<s.size();i++) ret+=s[i];
       ~^~~~~~~~~
password.cpp: In function 'std::__cxx11::string merge(int, int)':
password.cpp:41:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(j=0;j<=cev1.size() && son<cev2.size();j++){
           ~^~~~~~~~~~~~~
password.cpp:41:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(j=0;j<=cev1.size() && son<cev2.size();j++){
                             ~~~^~~~~~~~~~~~
password.cpp:42:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if(query(ekle(cev1,cev2[son],j))==cev1.size()+1) cev1=ekle(cev1,cev2[son],j), son++;
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
password.cpp:29:10: warning: unused variable 'k' [-Wunused-variable]
  int i,j,k;
          ^
password.cpp: In function 'std::__cxx11::string guess(int, int)':
password.cpp:48:10: warning: unused variable 'k' [-Wunused-variable]
  int i,j,k;
          ^
password.cpp:50:6: warning: unused variable 'ek' [-Wunused-variable]
  int ek=0,son=1;
      ^~
password.cpp:50:11: warning: unused variable 'son' [-Wunused-variable]
  int ek=0,son=1;
           ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...