제출 #208909

#제출 시각아이디문제언어결과실행 시간메모리
208909ArKCaTavan (COCI16_tavan)C++17
48 / 80
6 ms632 KiB
 #include<bits/stdc++.h>
#define  f1   first
#define  s2   second
#define  pb   push_back
#define  pob  pop_back
#define  int  ll
#define  ll   long long 
#define  PII  pair<int,int> 
#define  N    100005
#define  mod  1000000007

using namespace std;


int n,m,k,x;
string s,ss[1000];
int32_t main(){	    
	 // freopen("a.gir","r",stdin);
	// freopen("a.cik","w",stdout);
   //
  // 
	scanf("%lld %lld %lld %lld" ,&n,&m,&k,&x);
	cin>>s;
	for(int i=1;i<=m;i++){
		cin>>ss[i];
		sort(ss[i].begin(), ss[i].end());
	}
	int carp=1,i;
	for(i=m;i>0;i--){
		if(carp>x){
			break;
		}
		carp*=k;
	}
	int say=0,j;
	for(j=0;say<i;j++){
		if(s[j]=='#'){
			printf("%c",ss[say][0] );
			say++;
		}
		else{
			printf("%c",s[j] );
		}
	}
	int sa;
	for(;j<n;j++){
		if(s[j]=='#'){
			carp/=k;
			sa=1;
			A:
			// printf("%lld\n",carp);
			if((carp*sa)<x && (carp*(sa+1))>=x ){
				x-=k*sa;
				sa++;
				// printf("%lld\n", x);
			}
			else if((carp*sa)==x){
				x-=k*(sa-1);
			}
			else /*if(sa<=k)*/{
				sa++;
				goto A;
			}
			// printf("%lld\n", sa);
			printf("%c",ss[say+1][sa-1] );
			// cout<<ss[say][sa-1];
			say++;
		}
		else{
			printf("%c",s[j] );
		}
	}
}	

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

tavan.cpp: In function 'int32_t main()':
tavan.cpp:22:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%lld %lld %lld %lld" ,&n,&m,&k,&x);
  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...