HDOJ 1048

一个细节:

1. C语言中的  char c = getchar();

可以用于接收换行,即 ‘\n‘,如利用语句

if(c == ‘\n‘) ...    则可以是否输入了回车符

2.C++中若定义了  char arr[100];

并接收字符  cin>>arr[0];   并不可以接收 ‘\n‘

本题代码如下

#include <iostream>
#include <string>
#include <stdio.h>
using namespace std;

int main()
{
    string start,end;
    char str[1001],temp;
    int i;
    while(cin>>start)
    {
        for(i = 0;i < 1001;i++)
            str[i] = 0;

        if(start == "ENDOFINPUT")
            break;
        getchar();    //接收回车键
        for(i = 0;i < 1001;i ++)
        {
            str[i] = getchar();
            if(str[i] == ‘\n‘)   //输入完毕
                break;
            else if((str[i] >= 65) && (str[i] <= 90))  //进行转化
            {
                if(str[i] - 5 < 65)
                    temp = str[i] - 5 + 26;
                else
                    temp = str[i] - 5;
                cout<<temp;
            }
            else           //直接输出
                cout<<str[i];
        }
        cin>>end;
        cout<<endl;
    }
    return 0;
}
时间: 2024-10-10 09:52:27

HDOJ 1048的相关文章

HDOJ 1048 The Hardest Problem Ever

[题意]:很普通的解码问题,所有的大写字母左移5位.注意A-E的移动是加21,其他的减5. [代码:AC] #include <iostream> #include <iomanip> #include <cstring> #include <cstdlib> #include <cstdio> using namespace std; #define MAX 200+10 int main() { char str[MAX]; while (g

HDOJ 题目分类

HDOJ 题目分类 /* * 一:简单题 */ 1000:    入门用:1001:    用高斯求和公式要防溢出1004:1012:1013:    对9取余好了1017:1021:1027:    用STL中的next_permutation()1029:1032:1037:1039:1040:1056:1064:1065:1076:    闰年 1084:1085:1089,1090,1091,1092,1093,1094, 1095, 1096:全是A+B1108:1157:1196:1

1048: 导弹防御系统

1048: 导弹防御系统 时间限制: 1 Sec  内存限制: 128 MB提交: 836  解决: 349[提交][状态][讨论版] 题目描述 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹.拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹. 输入

【HDOJ】4328 Cut the cake

将原问题转化为求完全由1组成的最大子矩阵.挺经典的通过dp将n^3转化为n^2. 1 /* 4328 */ 2 #include <iostream> 3 #include <sstream> 4 #include <string> 5 #include <map> 6 #include <queue> 7 #include <set> 8 #include <stack> 9 #include <vector>

POJ Xiangqi 4001 &amp;&amp; HDOJ 4121 Xiangqi

题目链接(POJ):http://poj.org/problem?id=4001 题目链接(HDOJ):http://acm.hdu.edu.cn/showproblem.php?pid=4121 Xiangqi Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 1108   Accepted: 299 Description Xiangqi is one of the most popular two-player boa

UVA 1048 - Low Cost Air Travel(最短路)

UVA 1048 - Low Cost Air Travel 题目链接 题意:给定一些联票,在给定一些行程,要求这些行程的最小代价 思路:最短路,一张联票对应几个城市就拆成多少条边,结点表示的是当前完成形成i,在城市j的状态,这样去进行最短路,注意这题有坑点,就是城市编号可能很大,所以进行各种hash 代码: #include <cstdio> #include <cstring> #include <vector> #include <queue> #in

【HDOJ】4956 Poor Hanamichi

基本数学题一道,看错位数,当成大数减做了,而且还把方向看反了.所求为最接近l的值. 1 #include <cstdio> 2 3 int f(__int64 x) { 4 int i, sum; 5 6 i = sum = 0; 7 while (x) { 8 if (i & 1) 9 sum -= x%10; 10 else 11 sum += x%10; 12 ++i; 13 x/=10; 14 } 15 return sum; 16 } 17 18 int main() { 1

HDOJ 4901 The Romantic Hero

DP....扫两遍组合起来 The Romantic Hero Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 547    Accepted Submission(s): 217 Problem Description There is an old country and the king fell in love with a

【HDOJ】1099 Lottery

题意超难懂,实则一道概率论的题目.求P(n).P(n) = n*(1+1/2+1/3+1/4+...+1/n).结果如果可以除尽则表示为整数,否则表示为假分数. 1 #include <cstdio> 2 #include <cstring> 3 4 #define MAXN 25 5 6 __int64 buf[MAXN]; 7 8 __int64 gcd(__int64 a, __int64 b) { 9 if (b == 0) return a; 10 else return