三连击

题目描述

将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:3的比例,试求出所有满足条件的三个三位数。

输入输出格式

输入格式:

木有输入

输出格式:

若干行,每行3个数字。按照每行第一个数字升序排列。

输入输出样例

输入样例#1:


输出样例#1:

192 384 576
* * *
...
* * *
(输出被和谐了)

三重循环暴力枚举数字即可。

其实也可以枚举第一个数字,按照比例算其他两个数字。

 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
bool bo;
int main(){
int a[]={};
int i,j,k=;
bool bo;bo=true;
for(i=;i<=;i++){
a[]=i/;
a[]=i/%;
a[]=i%;
a[]=i*/;
a[]=i*/%;
a[]=i*%;
a[]=i*/;
a[]=i*/%;
a[]=i*%;
bo=true;
for(j=;j<=;j++)
for(k=j+;k<=;k++)
if(a[j]==a[k]||a[j]==||a[k]==) bo=false;
if(bo==true){
cout<<a[]<<a[]<<a[]<<" "<<a[]<<a[]<<a[]<<" "<<a[]<<a[]<<a[]<<endl;
}
//for(j=1;j<=9;j++) cout<<a[j]; //test }
return ;
}

三连击

阶乘之和

题目描述

用高精度计算出S=1!+2!+3!+…+n!(n≤50)

其中“!”表示阶乘,例如:5!=5*4*3*2*1。

输入输出格式

输入格式:

一个正整数N。

输出格式:

一个正整数S,表示计算结果。

输入输出样例

输入样例#1:

3
输出样例#1:

9

裸高精乘

 #include<iostream>
#include<cstdio>
using namespace std;
int a[]={};
int b[]={};
int N=;
int la=,lb=;
void plu(int a[],int b[]){
for(int i=;i<=la||i<=lb;i++){
a[i]+=b[i];
if(a[i]>&&a[i+]==) la++;
a[i+]+=a[i]/;
a[i]%=;
}
}
void muti(int n){
if(n>N) return;
int i;
for(i=;i<=lb;i++)
b[i]*=n;
for(i=;i<=lb;i++){
if(b[i]>=){
if(b[i+]==) lb++;
b[i+]+=b[i]/;
b[i]%=;
}
}
plu(a,b);
muti(n+);
}
int main(){
int n=;
cin>>N;
b[]=;
muti();
while(a[la]==&&la>)la--;
for(int j=la;j>=;j--) printf("%d",a[j]);
return ;
}

阶乘之和

幂次方

题目太长不放

递归处理

 #include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std; int a[];
int dfs(int n)
{
//幂为0、1、2则直接输出,>=3则递归求解。
int i=;
if(n!=)
{
while(n>=a[i]) i++; i--; //找到最大的幂
n-=a[i];//下面12~20行是处理减去的这部分。
printf("");
if(i!=)printf("(");//注意1次幂是2而不是2(1)
if( i== || i == ) printf("%d)",i);//幂为0、1、2时可输出幂(幂1时无输出)
//如果幂>=3,对幂递归,不输出幂。
if(i>=) {dfs(i);printf(")");}//递归求解,再添加右括号。
if(n!=) {printf("+");dfs(n);}//子问题与子问题之间用+连接;处理剩余的n(子问题)。
}
return ;
}
int main(void)
{
int i,n;
a[]=;
for(i=;i<;i++)
a[i]=a[i-]*; //a:1 2 4 8 16 32……
scanf("%d",&n);
dfs(n);
return ;
}

幂次方

[NOIP1998] 普及组的更多相关文章

  1. C++算法代码——三连击[NOIP1998 普及组]

    题目来自:https://www.luogu.com.cn/problem/P1008 题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序. 题目 ...

  2. NOIP2012 普及组 T3 摆花——S.B.S.

    题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能超过ai盆,摆花时 ...

  3. NOIP2016普及组复赛解题报告

    提高组萌新,DAY1DAY2加起来骗分不到300,写写普及组的题目聊以自慰. (附:洛谷题目链接 T1:https://www.luogu.org/problem/show?pid=1909 T2:h ...

  4. 05:统计单词数【NOIP2011复赛普及组第二题】

    05:统计单词数 总时间限制:  1000ms 内存限制:  65536kB 描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次 ...

  5. [题解]noip2016普及组题解和心得

    [前言] 感觉稍微有些滑稽吧,毕竟每次练的题都是提高组难度的,结果最后的主要任务是普及组抱一个一等奖回来.至于我的分数嘛..还是在你看完题解后写在[后记]里面.废话不多说,开始题解. 第一题可以说的内 ...

  6. NOIP2016普及组

    普及组.代码有空发. 第一题就是买铅笔.暴力模拟绝对可取. 第二题就是回文日期.从t1的年份到t2的年份枚举每一年.头尾要特判. 第三题就是海港.骗了40分. 第四题就是魔法阵.不太好优化. 完.

  7. [NOIP2013] 普及组

    计数问题 纯模拟 #include<cstdio> #include<iostream> using namespace std; int main(){ int n,x; c ...

  8. NOIP2008 普及组T2 排座椅 解题报告-S.B.S

    题目描述 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情.不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的D对同学上课时会交头接耳.同学 ...

  9. NOIP2008 普及组T1 ISBN号码 解题报告-S.B.S.

    题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字.1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”就是分隔符(键盘上的减号),最后一 ...

随机推荐

  1. Dev GridView 属性说明

    说明  Options  OptionsBehavior 视图的行为选项 AllowIncrementalSearch 允许用户通过输入想得到的列值来定位行 AllowPartialRedrawOnS ...

  2. Andriod 简介

    Andriod系统采用分层架构,分为4层: 应用程序层(Applications) 包含所有安装在手机上的应用程序(包括系统自带的程序) 应用程序框架层(Application Framework) ...

  3. RxJava尝试取代Handler初探

    在之前的一篇文章中,我们探究了RxJava的使用方法,详细请看https://www.cnblogs.com/yanyojun/p/9745675.html 根据扔物线大神的描述,如果用一个词来概括R ...

  4. iOS开发中的HTML解析

    在进行解析前,先将下面的第三方类添加到工程中: 添加以上三个类必须添加一个库,这个库是:libxml2.2.dylib. 还需要设置一些路径参数这个路径的设置,在 targets中,在build se ...

  5. Handler引起的内存泄露

    一般我都写handler的时候是这样的:   public class MyActivity extends Activity{ private final Handler myHandler = n ...

  6. js toString() 方法 Number() 方法 等 类型转换

    1.1 数字类型转字符串 String() 变量.toString() toString() 方法 toString() 方法可把一个逻辑值转换为字符串,并返回结果. 1.2 字符串转数字类型 Num ...

  7. 1-1 编程基础 GCC程序编译

    GCC简介      Linux系统下的gcc是GNU推出的强大.性能优越的多平台编译器,是GNU的代表作之一.gcc可以在多种硬体平台上编译出可执行程序,其执行效率与一般的编译器相比平局效率要高20 ...

  8. JS将时间戳转换为刚刚、N分钟前、今天几点几分、昨天几点几分等表示法

    使用Javascript语言,将时间戳转换为类似新浪微博的时间的表示方法. 要求转换规则: 1分钟以内显示为:刚刚 1小时以内显示为:N分钟前 当天以内显示为:今天 N点N分(如:今天 22:33) ...

  9. 关于js中的then(盗)

    then()相关的东西包括但不限于:promise,thien.js 虽然还没彻底搞清楚这些个玩意儿,但是  现在知道了  then()是干嘛的了 最主要的,是解决了异步方法立刻返回的问题  这个特性 ...

  10. Mapping (RESOURCE) not found :和BeanFactory not initialized or already closed - call 'refresh' before access记录

    1.Mapping (RESOURCE) not found :cn/sxx/model/Supplier.hbm.xml : origin(cn/sxx/model/Supplier.hbm.xml ...