11-05-sdust-个人赛赛后随想

第二次打个人赛

这次居然打秃了,被A题卡的体无完肤.....结果之后转D题心里挂着A题...D题也被卡。

然后第二天不甘心,翘课来机房敲昨天的题,结果两题完全重新敲,都是10分钟左右敲完代码,A题1掉

然后D题还真有点说头...用了一上午的时间去找到哪错了,领悟到了不少东西

#include <iostream>
#include <string>
#include <cstring>
#include <cstdio>
using namespace std;
int check(string s){
    for (int i=2;i<s.size();i++){
        if (s[i]==‘C‘) return 1;
    }
    return 0;
}
int work1(string s){
    int r,c;
    sscanf(s.c_str(),"R%dC%d",&r,&c);
    int a[1000];
    memset(a,0,sizeof(a));
    int top=0;
    while (c){
        a[top++]=c%26;
        c/=26;
        if (a[top-1]==0) a[top-1]=26,c--;
    }
    for (int i=top-1;i>=0;i--)
        putchar(a[i]+‘A‘-1);
    cout<<r<<endl;
}
int mypow(int t){
    int ans=1;
    for (int i=1;i<=t;i++)
        ans*=26;
    return ans;
}
int work2(string s){
    int a[1000];
    memset(a,0,sizeof(a));
    int top=0;
    while (s[top]>=‘A‘&&s[top]<=‘Z‘)  a[top]=s[top],top++;
    int r,c=0;
    int t=0;
    for (int i=top-1;i>=0;i--)
        c+=(a[i]-‘A‘+1)*mypow(t++);
    char st[1000]={‘\0‘};
    s.copy(st,s.size()-top,top);
    //st[s.size()]=‘\0‘;
    sscanf(st,"%d",&r);
    cout<<"R"<<r<<"C"<<c<<endl;
}
int main()
{
    int testcase;
    cin>>testcase;
    while (testcase--){
        string s;
        cin>>s;
        if (s[0]==‘R‘&&s[1]>=‘0‘&&s[1]<=‘9‘&&check(s)) work1(s);
            else work2(s);
    }
}

首先现学现卖学会了怎么用sscanf()

然后即使是字符数组,也一定要记得初始化

最后也是最重要的一点,思路不清晰千万千万不要下手,否则敲到一半才发现是错的

时间: 2024-10-23 01:56:25

11-05-sdust-个人赛赛后随想的相关文章

SewerCAD.V8i.v08.11.05.113.Win32 1CD+HAMMER.XM.v08.09

Bentley.SewerCAD.V8i.v08.11.05.113.Win32 1CD Bentley系列: Bentley AXSYS.Engine XM Edition.v08.09.03.53 Bentley AXSYS.Integrity XM Edition.v08.09.03.53 Bentley AXSYS.Process XM Edition.v08.09.03.53 Bentley.HAMMER.XM.v08.09.400.34 Bentley.PlantWise.XM.v8

Bentley.CivilStorm.V8i.SS5.08.11.05.113+Bentley.HAMMER.V8i.SS6.08.11.06.113

ANSYS.Customization.Tools(ACT).V17.0Bentley.CivilStorm.V8i.SS5.08.11.05.113Bentley.HAMMER.V8i.SS6.08.11.06.113Bureau.Veritas.Steel.v3.0eCSI.Bridge.2016.Advanced.v18.1.0.1227CSI.SAP2000.v18.1.0.1227Dassault.Systemes.SIMULIA.SIMULIA.FE-SAFE.2016.HF1Das

QTP 11.05下载地址及其汉化+破解

下载地址: QQ:1010305129 孩纸们,为了蛋疼的测试,尽 情地下吧!!!! QTP11.50 下载地址: 迅雷下载:http://kuai.xunlei.com/d/HhEvBQJ..AAgxtNQada 电驴下载地址:ed2k://|file|Software_HP_UFT_11.50_English_T6510-15080.iso|2839117824|6D30EB0C165E04BCB3D12035D79BF980|h=VHYLZY4U4MD7QE2PJAK33F7CORRAYP

Bentley CivilStorm SewerGEMS SewerCAD StormCAD V8i v08.11.05.58 1CD全方位的分析验证给排水系统分析件

Bentley CivilStorm V8i v08.11.05.58 1CD全方位的分析验证给排水系统分析件 Bentley SewerGEMS V8i v08.11.05.58 1CD Bentley SewerCAD SS5 V8i v08.11.05.58 1CD Bentley StormCAD V8i v08.11.05.58 1CD由于描述污水收集系统水力装置的计算公式极为复杂, 用户需要在条件多变的模拟过程中对配备泵和各种控制结构的全满或非全满管道公式 参数进行求解,因此需要多个

Bentley ProjectWise v8i 08.11.05.16 Admin+Server 项目协同系统

Bentley ProjectWise v8i 08.11.05.16 Admin+Server 项目协同系统 Bentley ProjectWise V8i v08.11.11.590 Admin 1CD Bentley ProjectWise V8i v08.11.11.590 Server 1DVD Bentley ProjectWise for TriForma v8 8.00.02.08 ProjectWise项目协同系统,使您能够在分布于世界各地的站点间交换工程项目信息,为所有指定的

Implementing a java agent to instrument code (copy from http://chimpler.wordpress.com/2013/11/05/implementing-a-java-agent-to-instrument-code/)

With a system running 24/7, you have to make sure that it performs well at any time of the day. Several commercial solutions exist to monitor the performance of systems: NewRelic, GraphDat and many others. They allow to see for instance if the api ca

[ASE][Daily Scrum]11.05

在昨天的课程之后经过讨论进行了初步的分工,并制定出了我们的一个两周计划. 尚没有和老师讨论,已经询问了时间没有收到回复,等老师那边讨论过后我会在更新这个部分. 第一阶段的目标是用户能够在一个空白的地图上看到自己的坦克,其他玩家的坦克,通过键盘操作自己的坦克移动,并可以开火. 第一周计划如下(11.06-11.10): View Shilin Liu 收集模型素材(坦克,地图块) 实现本地动画及操作监听 实现轮询服务器收包线程接口       Control Jiafan Zhu 实现服务器与本地

11.05篮球弹起与棋盘放芝麻

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

11.05练习赛

手机码的,没用数学公式,可能阅读体验较差,见谅 1105练习赛 T1 斩杀计划 题目大意: 对一个数列有三种操作: 1.取出数列中一个小于等于2的数放入集合中,花费为1 2.取出数列中一个小于等于3的数放入集合中,花费为4 3.将数列中所有的数减去3,花费为1 现给出这个数列,要求在操作三最小的情况下,求出令集合中数大于等于m时最小的花费. 输出最小操作次数及此时的最小花费 给出的数列中所有数小于等于30000, m小于等于5000000,数列中数的个数在5000000以内. 没想到没想到没想到