Submission #332146

#TimeUsernameProblemLanguageResultExecution timeMemory
332146DanerZeinCrtanje (COCI20_crtanje)C++14
30 / 50
1 ms384 KiB
#include <bits/stdc++.h>
using namespace std;
char res[110][110];
int main(){
  int n;
  cin>>n;
  string x;
  int h=0;
  int ma=0;
  int mh=0;
  vector<int> sg,s;
  cin>>x;
  for(int i=0;i<n;i++){
    if(x[i]=='+'){
      sg.push_back(i);
      s.push_back(1);
      h++;
    }
     if(x[i]=='-'){
      h--;
      sg.push_back(i);
      s.push_back(0);
    }
    ma=min(ma,h);
    mh=max(mh,h);
  }
  h=max(0,abs(mh)-1);
  memset(res,'.',sizeof res);
  int j=0;
  s.push_back(-1);
  if(sg.size()==0){
    for(int i=0;i<n;i++) cout<<"_";
    cout<<endl;
    return 0;
  }
  for(int i=0;i<n;i++){
    if(j!=sg.size() && sg[j]<=i){
      j++;
    }
    if(x[i]=='+'){
      res[h][i]='/';
      if(s[j]==1) h--;
    }
    if(x[i]=='-'){
      res[h][i]='\\';
      if(s[j]==0) h++;
    }
    if(x[i]=='='){
      res[h][i]='_';
    }
  }
  for(int i=0;i<abs(ma)+mh;i++){
    for(int j=0;j<n;j++){
      cout<<res[i][j];
    }
    cout<<endl;
  }
}

Compilation message (stderr)

crtanje.cpp: In function 'int main()':
crtanje.cpp:37:9: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |     if(j!=sg.size() && sg[j]<=i){
      |        ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...