sicily 1028 Hanoi Tower Sequence

本文详细解读了一个用于计算数组中偶数倍数的数量,并将这些元素转换为它们的一半值的C++程序。通过输入字符串,程序将每个字符转换为数字并进行计算,最终输出计算结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1 #include <bits/stdc++.h>
 2 
 3 using namespace std;
 4 
 5 int a[250];
 6 
 7 int cal(int a[],int n) {
 8     int cnt=1;
 9     while (a[n-1]%2==0) {
10         cnt++;
11         for (int i=0,temp=0;i<n;i++) {
12             temp=temp*10+a[i];
13             a[i]=temp/2;
14             temp%=2;
15         }
16     }
17     return cnt;
18 }
19 
20 int main()
21 {
22     int t;
23     cin >> t;
24     int count=0;
25     while(t--)
26     {
27         string s;
28         cin >> s;
29         int len = s.size();
30         for(int i=0; i<len; i++)
31             a[i] = s[i]-'0';
32         cout << "Case " << ++count << ": ";
33             
34         cout << cal(a, len) << endl;
35         if(t != 0)
36             cout << endl;
37     }
38     return 0;
39 }

 

转载于:https://www.cnblogs.com/dominjune/p/4446400.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值