非传统题【A002】

【A002】非传统题【难度A】——————————————————————————————————————————————————————————————————————————————————————————————————————————

【题目要求】

大家好!我是COJ第一道非传统题,是不是感觉非常的excited?

作为第一道非传统题,自然要给大家水一水。

不过呢首先要告诉大家什么是非传统题?非传统题实际上就是没有固定的输入输出,很奇怪的题目。本题作为一道引例希望大家喜欢~

接下来是题目内容:

很久很久以前,chx出过一道大水题。

------------可是,很可惜他丢失了样例。。。。

现在,chx给你这道题的一套样例,你需要猜测chx出的是什么题然后编写程序解决它,祝你好运!

请从这里下载样例(测试数据):链接: http://pan.baidu.com/s/1gd8L7qV 密码: ad5q

【输入要求】没有

【输出要求】没有

【输入示例】见网盘

【输出示例】见网盘

【解析】简单一看,就知道,.in文件中的第行的1、2、3、4是指的各项功能,1:加法 2:判断质数 3:乘法 4:你的程序需要在此处输出程序本身。听起来很难?努力吧!!!哈哈哈。本题很水,但也有坑人之处,操作四仅是单纯的输出字符串,并没有说的那么神奇。所以仅需连续if即可。

【代码】

#include<iostream>
using namespace std;
int t,n,m=0;
void yi()
{
    int t1,t2;
    cin>>t1>>t2;
    cout<<t1+t2<<endl;
    m++;if (m==n) return;yi();
}
void er()
{
    int t1,i;cin>>t1;
    for (i=2;i<=t1/2;i++) if (t1%i==0) {cout<<0;break;}
    if (i==t1/2+1) cout<<1;
    if (t1==1) cout<<0;
    cout<<endl;m++;
    if (m==n) return;er();
}
void san()
{
    int t1,t2;
    cin>>t1>>t2;
    cout<<t1*t2<<endl;
    m++;if (m==n) return;san();
}
int main()
{
    cin>>t;
    if (t==1) {cin>>n;yi();}
    else if (t==2) {cin>>n;er();}
    else if (t==3) {cin>>n;san();}
    else cout<<"你的程序需要在此处输出程序本身。听起来很难?努力吧!!!哈哈哈";
}

 版权所有,转发必须标明出处,否则必须找事。

原文地址:https://www.cnblogs.com/lijiaxin-blog-cpp/p/4637484.html