列表

详情


NC50075. 说能过那是假的

描述

这道题你只需要呆萌呆萌的把下面的代码交上去就行了,我书读的多,不会骗你的,我发4。
#include<stdio.h> #include<string.h> int main() {     char ch[100007];     int len,ans=0;     scanf("%s",ch);     len=strlen(ch);     for(int i=0;i<len;i++)     for(int j=i+1;j<len;j++)         for(int k=j+1;k<len;k++)             if(ch[i]=='O'&&ch[j]=='R'&&ch[k]=='Z')                 ans++;     printf("%d\n",ans); }

输入描述

输入一行一个仅包含'O','R'和'Z'三种字符的字符串s。( 0 < |s| <= 100000 )

输出描述

一行一个整数表示代码中ans的值。

示例1

输入:

ORZORZ

输出:

4

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++14(g++5.4) 解法, 执行用时: 5ms, 内存消耗: 600K, 提交时间: 2019-08-22 17:08:30

#include<bits/stdc++.h>
using namespace std;
int main()
{
	char s[1000010];
    scanf("%s",s);
	long long t=0,t1=0,t2=0;
	for(long long i=0;i<strlen(s);i++)
	{
		if(s[i]=='O')t++;
		else if(s[i]=='R')t1+=t;
		else t2+=t1;
	}
	cout<<t2;
	return 0;
}

C++ 解法, 执行用时: 5ms, 内存消耗: 648K, 提交时间: 2021-08-23 21:22:21

#include<iostream>
using namespace std;
typedef long long ll;
int main() 
{
	ll i,o=0,Or=0,orz=0;
	string q;
	cin>>q;
	for(i=0;i<q.size();i++) 
	{
		if(q[i]=='O') o++;
		if(q[i]=='R') Or+=o;
		if(q[i]=='Z') orz+=Or;
	}
	cout<<orz<<endl;
}

pypy3(pypy3.6.1) 解法, 执行用时: 66ms, 内存消耗: 19556K, 提交时间: 2020-03-18 12:54:54

s = input()
o=Or=orz=0
for i in s:
    if i=='O':
        o+=1
    if i=='R':
        Or+=o
    if i=='Z':
        orz+=Or
print(orz)

Python3(3.5.2) 解法, 执行用时: 56ms, 内存消耗: 3740K, 提交时间: 2019-08-18 10:51:12


s=input()
o=0
r=0
z=0
for i in s:
    if i=='O':
        o+=1
    if i=='R':
        r+=o
    if i=='Z':
        z+=r
print(z)

上一题