Atcoder ABC339 A - TLD

2024-02-14 19:36
文章标签 atcoder tld abc339

本文主要是介绍Atcoder ABC339 A - TLD,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

TLD

时间限制:2s 内存限制:1024MB

【原题地址】

所有图片源自Atcoder,题目译文源自脚本Atcoder Better!

点击此处跳转至原题

【问题描述】

在这里插入图片描述

【输入格式】

在这里插入图片描述
在这里插入图片描述

【输出格式】

在这里插入图片描述

【样例1】

【样例输入1】

atcoder.jp

【样例输出1】

jp

【样例说明1】

在这里插入图片描述

【样例2】

【样例输入2】

translate.google.com

【样例输出2】

com

【样例说明2】

在这里插入图片描述

【解题思路】

老汉使用到的是枚举的解题方式

将字符串转变为字符数组,倒序遍历,保存第一个遇到的 ‘.’ 的数组下标(位于数组最后一个),从当前下标后一个位置开始遍历并保存所遍历的字符,最后进行输出。

代码注释有详细过程

【代码】

package ABC339_A_TLD;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scan = new Scanner(System.in);String s = scan.next();// 将字符串s转换为字符数组char[] cs = s.toCharArray();// ci用于保存最后一个'.'的数组下标int ci = 0;// 获取最后一个'.'的下标for (int i = cs.length - 1; i >= 0; i--) {if (cs[i] == '.') {ci = i;break;}}// 创建字符数组c用于保存最后一个'.'后的字符char[] c = new char[cs.length - ci - 1];for (int i = ci + 1; i < cs.length; i++) {c[i - ci - 1] = cs[i];}// 将字符数组c转换为字符串输出System.out.println(new String(c));scan.close();}
}

这篇关于Atcoder ABC339 A - TLD的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/709401

相关文章

AtCoder Beginner Contest 370 Solution

A void solve() {int a, b;qr(a, b);if(a + b != 1) cout << "Invalid\n";else Yes(a);} B 模拟 void solve() {qr(n);int x = 1;FOR(i, n) FOR(j, i) qr(a[i][j]);FOR(i, n) x = x >= i ? a[x][i]: a[i][x];pr2(

AtCoder Beginner Contest 369 D - Bonus EXP 动态规划

原题链接: https://atcoder.jp/contests/abc369/tasks/abc369_d 思路:   这道题为什么要用动态规划呢,其实,对于第i个怪物,我们有打与不打两种处理方式,而对于打,我们是获得两倍的经验值,还是一倍的经验值,与我们打了奇数只怪物还是打了偶数只怪物有关了,因此我们定义dp[i][0] 为前i只怪物总共打了偶数次,dp[i][1] 为前i只怪物总

题解AtCoder ABC 358 F Easiest Maze

一道模拟题。 思路 最短的路线是直接竖着走下来,经过 n n n 个格子,所以 k k k 最小是 n n n。如果想要延长路线,可以采用九转大肠的形状,就像这样: 可以发现,每次向左走之后都必须走回来,所以每次新经过的格子数是偶数,得到 k − n k-n k−n 是偶数才有可行的方案。 首先,把整张图表的初始状态设为如下形式(即每个格点都是独立的): +++++S++o|o|o

AtCoder Beginner Contest 369 ABCDE

背景 无 A题:369  思路 假设A<=B 分类讨论,有如下两种情况         1.A==B,情况唯一,另外一个数只能取A         2.A<B,首先我们可以以B-A为公差d构造,另外一个数可以取A-d或者B+d。(然后接着考虑放在A和B中间的情况,样例中给了,只要B-A为偶数即可) 代码 inline void solve() {int a, b; cin >>

AtCoder Beginner Contest 369 A~E

封面原图 画师かにょこ AtCoder Beginner Contest 369 我愿称之为等差数列场 A - 369 题意 给两个数,问能和他们构成等差数列的数有多少个 代码 #include <bits/stdc++.h>#define mod 998244353using namespace std;typedef long long ll;typed

AtCoder Beginner Contest 366(D~E题解)

闲来无事去vp了一下之前放假没打的比赛,感觉需要总结的也就这两题吧,a,c都是水题,b只不过是实现有一点难,并不是很难写,d是一个需要自己推的三维前缀和,e也是一种前缀和,我当时没想到,看了大犇的代码才知道还能这么做 D - Cuboid Sum Query 题意:给你一个三维数组,然后给你q次询问,每次询问有一个起始位置和终止位置,然后问你这个的三维前缀和是什么 思路:用容斥原理推出三

AtCoder Beginner Contest 368 题解思路(A-D,F)

AtCoder Beginner Contest 368 题解&&思路(A-D,F) A - Cut 题目描述 有 N N N 个数在一个桶里面,从上往下第 i i i 个数是 A i A_i Ai​,从桶下面取出 K K K 个数,保持原顺序放在桶的上面,从上到下打印写在卡片上的整数。 思路 时间复杂度 O ( N ) . \mathcal{O}(N). O(N). 本质上

Hitachi Vantara Programming Contest 2024(AtCoder Beginner Contest 368)ABCDEF

前言 F比E简单多了,难评 A题:Cut 题意 给定n张卡片,将后m张卡片按顺序放置到顶部,按顺序输出卡片id 思路 更改输出方式即可 代码 inline void solve() {int n, m; cin >> n >> m;vector<int> a(n + 1);for (int i = 1; i <= n; i ++ ) cin >> a[i];for (int i =

D - Pedometer AtCoder Beginner Contest 367

题意: 一个长度为n的数组a首尾相接,求满足a[i]~a[j]的和是m的倍数的[i,j]对数 思路: 由于首位相接,那么区间i-->j的所有数有两种情况:第一种是i<j的情况,第二种是i>j的情况 为了简化处理,我们可以将他变为一个线性数组,也就是原数组的后面再加一个原数组,那么新数组的所有区间就包含了以上两种情况: 设s[i]为前缀和数组,a[i]到a[j]的数的和是m的倍数-

Atcoder - 4142 尺取法,位运算(适合难度:普及+/提高-)

Atcoder - 4142 尺取法,位运算(适合难度:普及+/提高-) 异或不懂的参考位运算 if a ^ b ^ c < a + b + c 说明a ^ b <= a + b \qquad 枚举一个左端点,然后利用双指针计俩来滑动右端点来找到最大的满足条件的右端点。解法和UVA1121是很相似的,都是尺取法。 #include <iostream>#include <