题解:

迭代,一次次k累加计算

代码:

#include<bits/stdc++.h>
using namespace std;
const int N=;
int n,a[N],b[N],c[][N],ans[N];
char s[N];
bool same(int p[],int q[],int x)
{
for(int i=;i<=x;i++)
if(p[i]!=q[i])return ;
return ;
}
void multi_1(int x)
{
int last=;
for(int i=;i<=ans[];i++)
{
ans[i]=ans[i]*x+last;
last=ans[i]/;ans[i]%=;
}
if(last>)ans[++ans[]]=last;
}
void multi_2(int w[],int p[],int q[])
{
int i,last=;
w[]=min(p[]+q[]-,n);
for(int k=;k<=w[];k++)
{
for(w[k]=last,i=;i<=p[];i++)
if(k+-i>=&&k+-i<=q[])w[k]+=p[i]*q[k+-i];
last=w[k]/,w[k]%=;
}
if(last)w[++w[]]=last;
}
int get(int x)
{
memcpy(c[],b,sizeof(b));
for(int i=;i<=;i++)
{
multi_2(c[i&],c[i&^],b);
if(same(c[i&],b,x))
{
multi_2(c[i&],c[i&^],a);
if(!same(c[i&],a,x))goto d1;
memcpy(b,c[i&^],sizeof(c[]));
return i;
}
}
d1:puts("");
exit();
}
int main()
{
scanf("%s%d",s,&n);
a[]=strlen(s),n=min(a[],n);
for(int i=;i<=n;i++)a[i]=s[a[]-i]-'';
memcpy(b,a,sizeof(a));
ans[]=;ans[]=;
for(int i=;i<=n;i++)multi_1(get(i));
ans[]++;
int j=;
while (ans[j]==)
{
ans[j+]++;
ans[j]=;
j++;
}
if (ans[ans[]+])ans[]++;
for(int i=ans[];i;i--)printf("%d",ans[i]);
}

noip2005循环的更多相关文章

  1. NOIP2005普及组第4题 循环

    NOIP2005普及组第4题 循环 时间限制: 1 Sec  内存限制: 128 MB提交: 27  解决: 6[提交][状态][讨论版][命题人:外部导入] 题目描述 乐乐是一个聪明而又勤奋好学的孩 ...

  2. [NOIP2005] 普及组 循环

    陶陶摘苹果 校门外的树 采药 以上三道都不是重点 循环 题目描述 乐乐是一个聪明而又勤奋好学的孩子.他总喜欢探求事物的规律.一天,他突然对数的正整数次幂产生了兴趣. 众所周知,2的正整数次幂最后一位数 ...

  3. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  4. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  5. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

  6. 模仿Linux内核kfifo实现的循环缓存

    想实现个循环缓冲区(Circular Buffer),搜了些资料多数是基于循环队列的实现方式.使用一个变量存放缓冲区中的数据长度或者空出来一个空间来判断缓冲区是否满了.偶然间看到分析Linux内核的循 ...

  7. 【JS基础】循环

    for 循环的语法: for (语句 1; 语句 2; 语句 3) { 被执行的代码块 } 语句 1 在循环(代码块)开始前执行 语句 2 定义运行循环(代码块)的条件 语句 3 在循环(代码块)已被 ...

  8. 【python之路4】循环语句之while

    1.while 循环语句 #!/usr/bin/env python # -*- coding:utf-8 -*- import time bol = True while bol: print '1 ...

  9. To Java程序员:切勿用普通for循环遍历LinkedList

    ArrayList与LinkedList的普通for循环遍历 对于大部分Java程序员朋友们来说,可能平时使用得最多的List就是ArrayList,对于ArrayList的遍历,一般用如下写法: p ...

随机推荐

  1. React 回忆录(三)使用 React 渲染界面

    Hi 各位,欢迎来到 React 回忆录!

  2. Python3基础 list remove 删除元素

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. tslib移植笔记(1)【转】

    本文转载自:https://blog.csdn.net/zijie_xiao/article/details/50740950 tslib移植笔记(1)2016-04-25 tslib背景[摘自百度] ...

  4. 写一个标准宏MIN,输入两个参数,返回较小的

    #define MIN(A,B) ((A) <= (B) ? (A) : (B))MIN(*p++, b)会产生宏的副作用 剖析: 这个面试题主要考查面试者对宏定义的使用,宏定义可以实现类似于函 ...

  5. ubuntu搭建discuz论坛

    a.安装mysql database 1.安装mysql服务端 sudo apt-get install mysql-server  (在此过程中要求为mysql的root用户设置一个密码) 2.安装 ...

  6. 【镜像地址】Maven地址列表

    1.国内OSChina提供的镜像,非常不错 <mirror> <id>CN</id> <name>OSChina Central</name> ...

  7. FAST:NetMagic交换机 与 Floodlight控制器 连接实战

    设备 NetMagic 08交换机 - 1; 装有Windows 7系统的PC - 1; VMware Workstation, Ubuntu 14.04 64bit - 1; 网线 - 1; 网口转 ...

  8. sudo: unable to resolve host myhostname: Connection timed out

    第一种 原因,/etc/hostname 中的hostname 与/etc/hosts 里面的不对应,导致无法解析 将两个文件的hostname改成一样的即可. /etc/hostname aaa / ...

  9. C语言专题-基本数据类和占位符

    C语言中常用的几种基本数据类型有 基本数据类型的长度 unsigned unsigned unsigned unsigned float没有unsigned double没有unsigned 占位符的 ...

  10. Lua---执行

    1.交互式: 2.脚本式(在命令行不要启动lua解释器,直接输): Testlua.lua 的内容: print("Hello World!")