算法笔记上机实践刷题记录

算法笔记刷题记录

Chapter3 入门篇(1) 模拟

3.1 简单的模拟

1.PAT B1001 害死人不偿命的(3n+1)猜想.

  	// 1001 害死人不偿命的(3n+1)猜想 
    #include <iostream>
    using namespace std;
    int n, cnt;
    int main()
    {
        cin >> n;
        while (n != 1){
            if (n % 2 != 0) {
                n = 3 * n + 1;
            }
            n /= 2;
            cnt++;
        }  
        cout << cnt << endl;
        return 0;
    }

2.PAT B1011 A+B 和 C

	// 1002 A + B 和 C 
    #include <iostream>
    using namespace std;
    typedef long long ll;
    int t;
    ll a, b, c;
    int main()
    {
        cin >> t;
        for (int i = 1; i <= t; ++i) {
            cin >> a >> b >> c;
            if (a + b > c) 
                cout << "Case #" << i << "true" << endl;
            else 
                cout << "Case #" << i << "false" << endl;
        }
        return 0;
    }
	//1016
	#include <iostream>
	using namespace std;
	typedef long long LL;
	LL a, b, da, db;
	
	LL f(int x, int dx) {
	    LL ans = 0;
	    while (x > 0) {
	        if (x % 10 == dx) {
	            ans = ans * 10 + dx;
	        }
	        x /= 10;
	    }
	    return ans;
	}
	int main()
	{
	    cin >> a >> da >> b >> db;
	    cout << f(a,da) + f(b,db) << endl;
	    return 0;
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值