博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces Round #268 (Div. 2) c
阅读量:7003 次
发布时间:2019-06-27

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

hot3.png

/* * @brief 题解 * @file c.cpp * @author xiyanxiyan10 * @CreatedTime 2014/10/02 * @LastChanged 2014/10/02 * @note  *      规律, 规律题目 *      当 n < 4时无解 *      当 n > 4时,如果n为偶数,则通过前4个数构造24,其余的数两两构造1 *      当 n > 4时  如果n为奇数,则通过前3个数构造24,其余的数两两构造1 */#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
using namespace std;#ifdef DEBUGifstream in;ofstream out;#endif#ifdef DEBUG#define CIN  in#define COUT  out#else#define CIN  cin#define COUT cout#endif#define oddStr  "1 * 2 = 2\n2 * 3 = 6\n6 * 4 = 24\n";#define evenStr "3 * 5 = 15\n2 * 4 = 8\n15 + 8 = 23\n23 + 1 = 24\n";#ifdef DEBUGvoid debugInit(void){      string buffer;      CIN.open("in", ios::in);      COUT.open("out", ios::out);      while(getline(CIN, buffer))            COUT << buffer << "\n";      COUT << "Out Put" << "\n";      CIN.close();      CIN.open("in", ios::in);}#endifint main(){#ifdef DEBUG    debugInit();#endif    int n;    CIN >> n;    if(n < 4){        COUT << "NO" << "\n";    }else{        COUT << "YES" << "\n";        if(n&0x1){                COUT << evenStr;                for(int i = 6; i < n; i+= 2){                        COUT << (i + 1)  << " - " << i << " = " << "1\n";                        COUT << "24 * 1 = 24\n";                }        }else{                COUT << oddStr;                for(int i = 5; i < n; i+= 2){                        COUT << (i + 1)  << " - " << i << " = " << "1\n";                        COUT << "24 * 1 = 24\n";                }        }    }    return 0;}

转载于:https://my.oschina.net/u/572632/blog/344165

你可能感兴趣的文章