作业1 2023.3.21

文章包含两道编程题目,第一题是关于楼层编号的,给定一个楼层m和一个禁止的数字t,求实际楼层。第二题是统计字符串中COW子串出现的次数,考虑字符顺序和重叠情况。两题都需要掌握数字处理和字符串遍历的算法技巧。
摘要由CSDN通过智能技术生成
  • 楼层编号

小林在 NOIP 比赛期间住在“新世界”酒店。和其他酒店不一样的是,这个酒店每天都有一个高能的数字 t,这个数字在楼层中是不会出现的,以 t=3 为例,则 3、13、31、33 等楼层是不存在的,楼层编号为 1,2,4,5,…所以实际上的 4 楼才是 3 楼。

已知小林预订了编号为 m 层的房间,并且当天高能数字是 t,现在他想知道房间所在的真实楼层是多少。

Input

一行两个整数 m 和 t,1≤m≤100000,0≤t≤9,保证 m 对 t 合法。

Output

一行一个整数,表示真实楼层。

Sample Input

14 3

Sample Output

12

#include <bits/stdc++.h>

using namespace std;

int aaa(int x,int t)//用来判断每个数字的每一位是否含有目标数字t;

{

    while(x){

        if(x%10==t) return 1;

        x=x/10;

    }

    return 0;

}

int main()

{

    int m,t;

    cin>>m>>t;

    int sum=0;

    for(int i=1;i<=m;i++)//1~n中所有数字遍历

    {

        if(aaa(i,t)) sum++;//调用函数 如果为含有T的返回1 计数器加1;

    }

    cout<<m-sum<<endl;//现楼层=总数-含t数字

    return 0;

}
  • 奶牛碑文
  • Description

    小伟暑假期间到大草原旅游,在一块石头上发现了一些有趣的碑文。碑文似乎是一个神秘古老的语言,只包括三个大写字母 C、O 和 W。尽管小伟看不懂,但是令他高兴的是,C、O、W的顺序形式构成了一句他最喜欢的奶牛单词“COW”。现在,他想知道有多少次 COW 出现在文本中。

    如果 COW 内穿插了其他字符,只要 COW 字符出现在正确的顺序,小伟也不介意。甚至,他也不介意出现不同的 COW 共享一些字母。例如,CWOW 出现了 1 次 COW,CCOW 算出现了2 次 COW,CCOOWW 算出现了 8 次 COW。

    Input

    第 1 行为 1 个整数 N。

    第 2 行为 N 个字符的字符串,每个字符是一个 C、O 或 W。

    Output

    输出 COW 作为输入字符串的子串出现的次数(不一定是连续的)。

    提示:答案会很大,建议用 64 位整数(long long)。

    Sample Input

    6

    COOWWW

    Sample Output

    6

    Hint

    对于 50% 的数据满足:N≤60。

    对于 100% 的数据满足:N≤100000。

    单组输入

  • #include <bits/stdc++.h>
    
    
    
    using namespace std;
    
    typedef long long ll;
    
    
    
    const ll N=1e5+10;
    
    char str[N];
    
    
    
    int main()
    
    {
    
        ll n,i,a=0,b=0,c=0;
    
        cin>>n>>str;
    
        for(i=0;i<n;i++)//要确保cow顺序正确 
    
        {
    
            if(str[i]=='C') a++;
    
            else if(str[i]=='O') b=b+a;
    
            else c=c+b;
    
        }
    
        cout<<c<<endl;
    
        return 0;
    
    
    
    
    
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值