🌕🌑🌑🌑🌑

# 題目連結

  • 題目連結
  • Online Judge
  • uDebug

# 題目說明

Time limit: 3.000 seconds

# 題目

Write a complete program that will correctly decode a set of characters into a valid message. Your program should read a given file of a simple coded set of characters and print the exact message that the characters contain. The code key for this simple coding is a one for one character substitution based upon a single arithmetic manipulation of the printable portion of the ASCII character set.

# Input & Output

For example: with the input file that contains:

1JKJ'pz'{ol'{yhklthyr'vm'{ol'Jvu{yvs'Kh{h'Jvywvyh{pvu5
1PIT'pz'h'{yhklthyr'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jvywvyh{pvu5
1KLJ'pz'{ol'{yhklthyr'vm'{ol'Kpnp{hs'Lx|pwtlu{'Jvywvyh{pvu5

your program should print the message:

*CDC is the trademark of the Control Data Corporation.
*IBM is a trademark of the International Business Machine Corporation.
*DEC is the trademark of the Digital Equipment Corporation.

Your program should accept all sets of characters that use the same encoding scheme and should print the actual message of each set of characters.

# Sample Input

1JKJ'pz'{ol'{yhklthyr'vm'{ol'Jvu{yvs'Kh{h'Jvywvyh{pvu5
1PIT'pz'h'{yhklthyr'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jvywvyh{pvu5
1KLJ'pz'{ol'{yhklthyr'vm'{ol'Kpnp{hs'Lx|pwtlu{'Jvywvyh{pvu5

# Sample Output

*CDC is the trademark of the Control Data Corporation.
*IBM is a trademark of the International Business Machine Corporation.
*DEC is the trademark of the Digital Equipment Corporation.

# 解題技巧

這題也挺簡單的,相信直覺。

# Solution

Main.c
#include <stdio.h>
int main(){
    char ch;
    while (scanf("%c", &ch) == 1){
        if (ch != '\n')
            printf("%c", ch - ('J' - 'C'));
        else
            printf("\n");
    }
    return 0;
}
Main.cpp
#include <bits/stdc++.h>
using namespace std;
int main(){
    string str;
    while(getline(cin, str)){
        for(int i = 0; i < str.length(); i++){
            cout << (char)(str[i] - ('J' - 'C'));
        }
        cout << endl;
    }
    
    return 0;
}
Main.java
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
public class Main {
    public static void main(String[] args) throws IOException {
        DataInputStream in = new DataInputStream(System.in);
        DataOutputStream output = new DataOutputStream(System.out);
        
        int c;
        
        while ((c = in.read()) != -1) {
            if (c == 10) {
                output.write('\n');
            } else {
                output.write(c - 7);
            }
        }
    }
}
單字

** **
!! !!

片語 & 搭配詞

!! !!