我是靠谱客的博主 害羞蜡烛,最近开发中收集的这篇文章主要介绍codeforce 1B,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

orz ,感觉一道很傻的模拟题,因为细节wa了好多回啊....感觉自己今天写的代码带毒...

 

 

 

 

#include <stdio.h>
#include <stack>
#include <istream>
#include <map>
#include <math.h>
#include <string.h>
#include <set>
#include <vector>
#include <string>
using namespace std;
const int maxn = 1e5 + 1;

 

char sum2[maxn];
long long int solve(long long int temp)
{
int len = strlen(sum2);
long long int res = 0;
long long int fuck =1;
for(int i = 0;i<len;i++)fuck*=10;
for(int i = 0;i<len;i++){
res+=fuck*(sum2[i]-'0');
fuck/=10;
}
return res/10;
}
int main() {
int t;
scanf("%d", &t);
getchar();
for (int i = 0; i < t; i++) {
char str[maxn];
memset(str,'',sizeof(str));
memset(sum2,'',sizeof(sum2));
scanf("%s", str);
getchar();
int len = strlen(str);
//printf("%s",str);
char sum1[maxn],top1=0,top2=0;
memset(sum1,'',sizeof(sum1));
//long long int sum1 = 0, sum2 = 0;
int len1 = 1, len2 = 1;
for (int j = 0; j < len; j++) {
if (str[j] <= '9'&&str[j] >= '0' && !top1) {
for (int k = j; str[k] <= '9'&&str[k] >= '0'&&k < len; k++) {
sum1[top1++]=str[k];
j++;
}
j--;
}
else if (str[j] <= '9'&&str[j] >= '0' && top1) {
for (int k = j; str[k] <= '9'&&str[k] >= '0'&&k < len; k++) {
//sum2 += (str[k] - '0')*len2;
//len2 *= 10;
sum2[top2++]=str[k];
j++;
}
j--;
}
}
// puts(sum1);
if (!top2) {
printf("R%s",sum1);
int l = 0;
while (!(str[l] <= '9'&&str[l] >= '0')) {
l++;
if(l>=len)break;
}
// printf("%d**n",l);
long long int temp = (long long int)(pow(26, l - 1) + 0.5);
//printf("%lld**n",temp);
int r = 0;
long long int ans=0;
while (r < l) {
ans += (temp*(str[r] + 1 - 'A'));
temp /= 26;
r++;
}
printf("C%lldn", ans);
}
else {
char str1[maxn];
int top =0;
long long int temp=solve(top2);
// printf("%lld***n",temp);
bool f=1;
while (temp) {
// printf("%c**n",temp%26-2+'A');
str1[top++]=((temp)%26-1+26)%26+'A';
// printf("%d***n",((temp)%26-1+26)%26);
if(temp%26==0)
{
f=0;
}
temp /= 26;
if(f==0)temp-=1;//这里wa了好多回...但其实我不知道为什么,改了之后就AC了...求大神告知orz
f=1;
}

// printf("%d***n",top);
// if(i==55)printf("%s*****n",str);
for(int h =top-1;h>=0;h--)printf("%c",str1[h]);
printf("%s",sum1);
printf("n");
}
}
return 0;
}

转载于:https://www.cnblogs.com/DreamKill/p/8711641.html

最后

以上就是害羞蜡烛为你收集整理的codeforce 1B的全部内容,希望文章能够帮你解决codeforce 1B所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部