关于itoa这个小函数
查看原帖
关于itoa这个小函数
1044788
zasxcvbnmdfghjm楼主2024/5/13 16:50

emmmm

本人的代码:

#include<bits/stdc++.h>
using namespace std;
int flag=1,flag1=0;
int main(){
	int n,m,p;
	cin>>n>>m;
	char a[105];
	itoa(m,a,n);
	int k=strlen(a);
	for(int i=1;i<=k;i++){
		p+=pow(n,k-i)*(a[i-1]-'0');
	}
	int cnt=0;
	char b[105];
    while(1){
    	cnt++;
    	flag=1;
    	itoa(p,b,n);
    	int m=strlen(b);
    	for(int i=1;i<=m;i++){
			p+=pow(n,i-1)*(b[i-1]-'0');
		}
    	itoa(p,b,n);
    	m=strlen(b);
		for(int j=0;j<=m;j++){
			if(b[j]==b[m-j-1]){
				flag=flag*1;
			}
			else if(m%2==1){
				flag=flag*0;
				break;
			}
			else{
				flag=flag*0;
				break;
			}
		}
    	if(flag==1){
    		break;
		}
		if(cnt>30){
			flag1=1;
		}
	}
	if(flag1==1){
		cout<<"Impossible";
	}
	else{
		cout<<"STEP="<<cnt;
	}
	
	
	
	
} 

我写这道题就是专门想试一下这个小函数..... 但,itoa不在标准库里......

2024/5/13 16:50
加载中...