博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hdu 1708 Fibonacci String
阅读量:5257 次
发布时间:2019-06-14

本文共 1118 字,大约阅读时间需要 3 分钟。

简单模拟题。

思路:由于数据量太大,直接用字符串去模拟是不行的。可以直接通过字母出现的次数通过迭代计算第N次字母出现的次数。注意:Please output a blank line after each test case. 在每一个样例后面换行符。

CODE:

#include <stdio.h>
#include <stdlib.h>
#include <
string.h>
using 
namespace std;
const 
int SIZE = 
101;
__int64 hash[
51][
26];
char sz1[SIZE], sz2[SIZE];
void init(
char *sz1, 
char *sz2)
{
    
int len1 = strlen(sz1), len2 = strlen(sz2);
    
for(
int i = 
0; i < len1; i++)
    {
        hash[
0][sz1[i]-
'
a
']++;
    }
    
for(
int i = 
0; i < len2; i++)
    {
        hash[
1][sz2[i]-
'
a
']++;
    }
    
return ;
}
int main()
{
    
int T, n;
    
int i, j;
    scanf(
"
%d
", &T);
    
while(T--)
    {
        memset(hash, 
0
sizeof(hash));
        scanf(
"
%s%s%d
", sz1, sz2, &n);
        init(sz1, sz2);
        
if(n == 
0)
        {
            
for(i = 
0; i < 
26; i++)
            {
                printf(
"
%c:%I64d\n
"
'
a
'+i, hash[
0][i]);
            }
        }
        
else 
if(n == 
1)
        {
            
for(i = 
0; i < 
26; i++)
            {
                printf(
"
%c:%I64d\n
"
'
a
'+i, hash[
1][i]);
            }
        }
        
else
        {
            
for(i = 
2; i <= n; i++)
            {
                
for(j = 
0; j < 
26; j++)
                {
                    hash[i][j] = hash[i-
2][j]+hash[i-
1][j];
                }
            }
            
for(i = 
0; i < 
26; i++)
            {
                printf(
"
%c:%I64d\n
"
'
a
'+i, hash[n][i]);
            }
        }
        printf(
"
\n
");      
//
别忘了 
    }
    
return 
0;

} 

转载于:https://www.cnblogs.com/g0feng/archive/2012/08/23/2652113.html

你可能感兴趣的文章
WebStorm快捷键收集
查看>>
testng,soket write error错误
查看>>
javaScript中string对象的方法
查看>>
跑一段代码遍历所有汉字
查看>>
生产者/消费者模式(二)
查看>>
Leetcode 226 Invert Binary Tree
查看>>
JAVA-初步认识-第十三章-多线程(卖票示例)
查看>>
[译]转译器: 今日大不同
查看>>
HBase基础介绍
查看>>
我是如何指导团队(软件开发团队)新人的
查看>>
Vue项目实战《硅谷外卖》
查看>>
Base64编码图片存取与前台显示
查看>>
关于弹性空间
查看>>
实用的 Node.js 教程,工具和资源
查看>>
20幅妙不可言的光涂鸦摄影作品
查看>>
标记化结构初始化语法(C语言)
查看>>
使用ZXing.dll库生成二维码(C#实现)
查看>>
中断向量表就是中断向量的列表
查看>>
OpenCV.概念(读书笔记)
查看>>
Win8如何默认以管理员运行程序
查看>>