文章

3

粉丝

395

获赞

4

访问

14.4k

头像
P1454-翻转数
P1454 清华大学机试题
发布于2023年1月2日 14:38
阅读数 3.9k

这题重点只要会反转就可,求一个数的翻转数:

int res=0;

while(n!=0){

          int t=n%10;

          res=res*10+t; //这一步其实是可能产生数据溢出问题的,一般要判断后在操作,不过题干所说为4位数,那就不担心了

          n=n/10;

}

return res;

登录查看完整内容


登录后发布评论

1 条评论
FCC
2024年3月14日 23:17

#include <bits/stdc++.h>
using namespace std;

//翻转数字
int reverse( int n ){
	int res = 0;
    for( int i=0; i < 3; i++ ){
	    int x = ( n >> i ) % 10;   //运行报错,右移运算,是不是只能针对二进制呀?
		res = res * 10 + x;
	}
	return res;
}

int main(){
	for( int i=1000; i < 10000; i++ ){
		int j = reverse(i);
	    if( i * 9 == j )
		    cout << i << endl;
	}
	return 0;
}

您好,请问注释那句的右移是不是不能这么用呀?

赞(0)