浙大ACM1006

原创 2007年09月19日 15:56:00
  1. /** ZOJ-1006 Do The Untwist
  2.     http://acm.zju.edu.cn/show_problem.php?pid=1006
  3.     Yimin.Li
  4. **/
#include <iostream>
#include <string>

using namespace std;

int GetCode(const char &ch) 
{
    if ( ch == '_' )
    {
        return 0;
    }
    else if ( ch == '.' )
    {
        return 27;
    }
    else if ( ch >='a' && ch <='z' )
    {
        return ch-'a'+1;
    }
   
    return -1;
}

char GetChar(const int &code)
{
    if ( code == 0 )
    {
        return '_';
    }
    else if ( code == 27 )
    {
        return '.';
    }
    else
    {
        return code + 'a' - 1;
    }
}


void execute(const int &key, string &cipherText)
{
    int code, pIndex;
    string plainText(cipherText);
    string::size_type textLen = cipherText.length();
    for (int i=0; i<textLen; ++i)
    {
        pIndex = (key * i) % textLen;
        code = GetCode( cipherText[i] );
        code = (code + i) % 28;
        plainText[pIndex] = GetChar(code);
    }
    cipherText.swap(plainText);
}



int main()
{
     int key;
     string text;
   
   
    while ( cin >> key >> text )
     {
        if ( key == 0 )
            break;
        execute(key, text);
        cout << text << endl;
     }
   
     return 0;
   
}

浙大PAT甲级-1006

比较简单 关键点: -vector的用法(可参考http://www.cnblogs.com/wang7/archive/2012/04/27/2474138.html)#include #in...

浙大 PAT Advanced level 1006. Sign In and Sign Out

At the beginning of every day, the first person who signs in the computer room will unlock the door,...

浙大OJ网址及ACM题目分类

浙大oj网址:http://acm.zju.edu.cn/onlinejudge/ 第一套 动态规划 :ZJU1558 难度:比较简单 博弈问题 :ZJU1913 难度:中等偏难 递归计算 :...

zoj浙大acm题目分类整理

DP: 1011 NTA 简单题 1013 Great Equipment 简单题 1024 Calendar Game 简单题 1027 Human Gene Functions 简单题 ...
  • bat67
  • bat67
  • 2017年05月15日 21:56
  • 413

浙大ACM 3455 Shizuka's Letter

浙大ACM 好像是这题,当时花了不少时间,主要可能是当时不小心哪里写错了,一直不AC,后来,用原来的想法,再写了一次,就AC了。 Shizuka's Letter Time Limit: ...

浙大acm程序设计竞赛模板

  • 2009年08月18日 19:28
  • 564KB
  • 下载

浙大ACM 1002 Fire Net

先看看自己以前的题,找回点自己以前的思想,这题是我大一刚刚学C时写的,当时在练这题时,他们都说用搜索,但我用的是贪心,贪心一般是说找最多,这里我找的是最少,一个一个找下来,就OK了,你先找到这个点能被...

浙大acm1093程序代码报告

  • 2009年05月14日 21:19
  • 2KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:浙大ACM1006
举报原因:
原因补充:

(最多只允许输入30个字)