问题标题: 酷町堂:6498 特工的任务

0
0
已解决
潘艺博
潘艺博
初级天翼
初级天翼

6498   特工的任务

经验值:1200 时间限制:1000毫秒

题目描述 Description

星际特工酷酷从汪星窃取了一份秘密情报,但是里面都是汪星语,酷酷看不明白,后来他请教了卡卡西,才知道想把汪星语翻译成酷星语很简单,只需要将原文中的每个字母换成对应的字母就可以了,想知道换成哪个字母还需要知道翻译密钥,一个整数P,只需将原字母按照字典序向后顺延P个位置即可(z的下一个字母是a)
例如:若翻译密钥为1,则字母z翻译的结果则为a
现给出翻译密钥和原秘密情报,请你给出翻译的结果

输入描述 Input Description

第一行一个整数P
第二行一个由小写字母组成的长度不超过50的字符串

输出描述 Output Description

一行,翻译的结果

样例输入 Sample Input

1 qwe

样例输出 Sample Output

rxf

数据范围及提示 Data Size & Hint

1≤P≤100

WA20代码:

#include<bits/stdc++.h>
//火车头省略
using namespace std;
int n;
string s;
int main(){
    cin>>n;
    getline(cin,s);
    getline(cin,s);
    for(int i=0;i<s.size();i++){
        if(s[i]+n>'z'){
            s[i]=(char)('a'+(s[i]+n-'z'-1));
        }else{
           s[i]=(char)(s[i]+n); 
        }
        cout<<s[i];
    }
    return 0;
}

样例过了,20分,什么*

求大神指点

潘艺博在2021-07-24 12:27:40追加了内容

自己试的也过了。。。。。。


0
已采纳
朱欣然
朱欣然
高级守护
高级守护

在if里面加上的运算后面加上%26

1
李宜和
李宜和
高级启示者
高级启示者

if在里的代码在只有单一语句的时候可以不加{}

李宜和在2021-08-15 13:30:43追加了内容

啊啊啊啊,我发整段了

0
王文博
王文博
缔造者之神
缔造者之神

入国P>27,就会错误,因为如果P为30,ASCII码就是其他字符的了。

0
潘艺博
潘艺博
初级天翼
初级天翼

DING

有人吗

潘艺博在2021-07-27 14:41:14追加了内容

好家伙,一个DING让我这帖从第四页跑到了第一页

0
王文博
王文博
缔造者之神
缔造者之神
#pragma GCC optimize(3)
#pragma GCC target("avx")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("inline")
#pragma GCC optimize("-fgcse")
#pragma GCC optimize("-fgcse-lm")
#pragma GCC optimize("-fipa-sra")
#pragma GCC optimize("-ftree-pre")
#pragma GCC optimize("-ftree-vrp")
#pragma GCC optimize("-fpeephole2")
#pragma GCC optimize("-ffast-math")
#pragma GCC optimize("-fsched-spec")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-falign-jumps")
#pragma GCC optimize("-falign-loops")
#pragma GCC optimize("-falign-labels")
#pragma GCC optimize("-fdevirtualize")
#pragma GCC optimize("-fcaller-saves")
#pragma GCC optimize("-fcrossjumping")
#pragma GCC optimize("-fthread-jumps")
#pragma GCC optimize("-funroll-loops")
#pragma GCC optimize("-fwhole-program")
#pragma GCC optimize("-freorder-blocks")
#pragma GCC optimize("-fschedule-insns")
#pragma GCC optimize("inline-functions")
#pragma GCC optimize("-ftree-tail-merge")
#pragma GCC optimize("-fschedule-insns2")
#pragma GCC optimize("-fstrict-aliasing")
#pragma GCC optimize("-fstrict-overflow")
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-skip-blocks")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("-funsafe-loop-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")
#pragma GCC optimize(2)
#include <bits/stdc++.h>
using namespace std;
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    char a1[10005],b1[10005];
    int a[10005],b[10005],c[10005],lena,lenb,lenc,i,j,x;
    memset(a,0,sizeof(a)); 
    memset(b,0,sizeof(b)); 
    memset(c,0,sizeof(c));
    scanf("%s",a1); 
    scanf("%s",b1); 
    lena=strlen(a1);
    lenb=strlen(b1);
    for(int i=0;i<=lena-1;i++) a[lena-i]=a1[i]-48;
    for(int i=0;i<=lenb-1;i++) b[lenb-i]=b1[i]-48;
    for(int i=1;i<=lena;i++)
    {
        x=0;//存放进位 
        for(int j=1;j<=lenb;j++)//对乘数的每一位进行处理 
        {
            c[i+j-1]=a[i]*b[j]+x+c[i+j-1];//当前乘积+进位+原数 
            x=c[i+j-1]/10;
            c[i+j-1]%=10;
        }
        c[i+lenb]=x;//进位 
    }
    lenc=lena+lenb;
    while(c[lenc]==0&&lenc>1) lenc--;//删除前导0 
    for(int i=lenc;i>=1;i--) cout<<c[i];
    cout<<endl;
    return 0;
}

 

0
0
潘艺博
潘艺博
初级天翼
初级天翼

@李宜和 

#include<bits/stdc++.h>

using namespace std;

int n;

struct gys{

    string ne;

    int y,e,s;

}a[100];

bool cmp(gys x,gys y){

    if(x.y!=0&&x.e!=0&&x.s!=0){

        if(((x.y+x.e+x.s)*1.0/3.0)!=((y.y+y.e+y.s)*1.0/3.0)){

            return ((x.y+x.e+x.s)*1.0/3.0)<((y.y+y.e+y.s)*1.0/3.0);

        }

        return x.y<y.y;

    }

}

int main(){

cin>>n;

for(int i=1;i<=n;i++){

    cin>>a[i].ne>>a[i].y>>a[i].e>>a[i].s;

    }

    sort(a+1,a+1+n,cmp);

    cout<<a[1].ne<<" "<<a[1].y<<" "<<a[1].e<<" "<<a[1].s;

    return 0;

}

WA90

0
李宜和
李宜和
高级启示者
高级启示者

你需要黑科技:

ios::sync_with_stdio(false); 
    cin.tie(0); 
    cout.tie(0);

核心:

isComp[1]=1;
    for(int i=2;i*i<=n;i++) 
    { 
        if(isComp[i]==0) 
            for(int j=i*i;j<=n;j+=i) 
                isComp[j]=1;
    }
    for(int i=1;i<=n;i++)
    {
        if(isComp[i]==0)
            ans++;
    }

 

0
王文博
王文博
缔造者之神
缔造者之神

输入:

167
98 25 81
25 57 74
29 6 88
100 29 13
60 63 12
12 54 69
59 18 97
99 57 82
14 24 24
100 28 70
38 4 18
56 43 71
53 69 49
38 21 12
88 84 71
51 40 67
86 10 14
28 60 68
28 60 2
81 74 87
81 26 78
36 90 55
5 18 15
82 58 14
72 96 98
86 64 64
97 43 61
81 8 15
44 11 28
47 61 56
57 80 47
15 18 23
90 37 50
45 58 10
76 42 55
25 99 62
65 94 79
34 43 61
68 27 10
58 91 2
69 85 68
14 85 75
80 57 86
84 21 55
65 41 68
91 1 82
83 74 57
59 83 36
10 69 59

输出:

50 266
25 266
63 252
162 249
57 248

特判输入的第1个数就可以了

0
我要回答