题解 | #小乐乐与字符串#
小乐乐与字符串
http://www.nowcoder.com/practice/e09de1fc11db4a438cf8f0668848660d
#include<stdio.h> #include<string.h> int main(void){ char str[8001]={0}; gets(str); char *p = str; long long int c = 0,ch = 0,chn = 0; while(*p){ if(*p=='C'){ c++; }else if(*p =='H'){ ch+=c; }else if(*p =='N'){ chn+=ch; } p++; } printf("%lld",chn); return 0; } //可以先找到所有的C然后用所有的C去匹配所有的H,找到所有的CH之后再用所有CH匹配N组合成CHN // 例如: // CHNNCCHN; // 你先找到所有的C:总共有3个-->之后用这3个C去找H:一个C可对应2个H则3个C可对应出6个CH // 用你找到的6个CH去匹配N-->一个CH对应可对应3个N 则6个CH可对应出18个CHN // 所以可以找到18个CHN // 刚刚学习的小萌新。。。。