ACM-ICPC 2018青岛网络赛-H题 Traveling on the Axis
2024-08-30 15:19:11
题目:略(不知道怎么从ZOJ搬题)
地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4054
把这题的每个点分成两种情况看,如果是从这个点开始,0算作2,1算作1,如果是中间点或者是结束点,和前一点的相同看作2,不相同看作1
则我们只需要算出该点的两种权值(之前提到的0算作2,1算作1和前一点的相同看作2,不相同看作1)分别乘以作为起始点出现的次数和作为中间点或者是结束点出现的次数
起始点出现的次数即是其从后向前数的次序,
中间点或者是结束点出现的次数即是(长度-从后向前数的次序)*(从前往后数的次序-1)
#include <iostream>
#include <string>
#include <string.h> using namespace std; int main()
{
ios::sync_with_stdio(false);
int t;
cin >> t;
while (t--)
{
int a, b;
string str;
cin >> str;
int num = ;
long long sum = ;
for (int i = ; i < str.size(); i++)
{
a = str[i] - '';
if (!a)
a = ;
if (i)
{
if (str[i] == str[i - ])
{
b = ;
}
else
{
b = ;
}
}
sum += a * (str.size() - i) + b * (str.size() - i) * num;
num++;
}
cout << sum << endl;
}
return ;
}
最新文章
- 模型浏览器【Model Browser】【EF基础系列6】
- 从头开始构建LINUX [LFS 脚本]
- RK 61 键盘 Ubuntu 下键位映射修改方案
- java获取年份的后两位
- 实时监控log文件
- HDU 4704 Sum (高精度+快速幂+费马小定理+二项式定理)
- [LeetCode]题解(python):050-Pow(x, n)
- IIS 7.0 and Web Farms
- C#中的表达式树简介
- 关于触发器、存储过程和DBlink的综合运用 (转)
- 自己写的轻量级PHP框架trig与laravel5.1,yii2性能对比
- background-position 具体的使用说明
- css3实现可以计算的自适应布局——calc()
- CRM客户关系管理系统(二)
- c# 关于页面生命周期
- [LeetCode] 83. Remove Duplicates from Sorted List ☆(从有序链表中删除重复项)
- jquery中的 deferred之 when (三)
- c# DataSet转换为Json
- kafka数据可靠传输
- XCode中常用错误解决