import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.next().charAt(0);
System.out.println(A);
}
}
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
System.out.println(text.length());
}
}
.length() string 길이 나타냄
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int cnt = Integer.parseInt(bf.readLine());
for (int i=0; i<cnt; i++) {
String A = bf.readLine();
System.out.println(A.charAt(0)+""+A.charAt(A.length()-1));
}
}
}
A.charAt() <-인덱스를 의미
첫번째는 0, 마지막은 A.length-1
그냥 더하면 숫자로 변환 되기때문에 "" 넣어줘야함
11720번
#1
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
bf.readLine(); // N 은 쓸모가 없으므로 입력만 받는다.
int sum = 0;
for(byte value : bf.readLine().getBytes()) {
sum += (value - '0'); // 또는 (a-48)
}
System.out.print(sum);
}
}
솔직히 모르겠다.
#2
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
sc.nextInt();
String B = sc.next();
int sum = 0;
for (int i = 0; i<B.length(); i++) {
sum += B.charAt(i)-48;
}
System.out.println(sum);
}
}
charAt() 은 해당 문자의 아스키코드 값을 반환하므로 -'0' 혹은 -48을 해줘야 입력받은 숫자 값 그대로를 사용할 수 있다.
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
// 알파벳 수만큼 배열 생성
int[] arr = new int[26];
for (int i=0; i<26; i++) {
arr[i] = -1;
}
for(int i = 0; i < text.length(); i++) {
// 문자하나하나 분리
char ch = text.charAt(i);
if(arr[ch - 'a'] == -1) { // arr 원소 값이 -1 인 경우에만 초기화
arr[ch - 'a'] = i;
}
// ch -'a' = 문자를 숫자로 변환 ch -97 도 가능
// a부터 1로 나타내려고
}
for(int val : arr) { // 배열 출력
System.out.print(val + " ");
}
}
}
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int cnt = Integer.parseInt(bf.readLine());
for (int i = 0; i<cnt; i++) {
st = new StringTokenizer(bf.readLine());
int num = Integer.parseInt(st.nextToken());
String text = st.nextToken();
for (int j = 0; j<text.length() ;j++) {
for (int k = 0; k<num; k++) {
System.out.print(text.charAt(j));
}
}
System.out.println();
}
}
}
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
int[] arr = new int[26];
// 알파벳 갯수만큼 받기
for (int i = 0; i<text.length(); i++) {
if ('a' <= text.charAt(i) && text.charAt(i) <= 'z') {
// 소문자 (-97도 가능)
arr[text.charAt(i)-'a']++;
} else {
// 대문자도 적용 (-65도 가능)
arr[text.charAt(i)-'A']++;
}
}
int max = 0;
char ch = '?'; //''만 되네?
for (int i = 0; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
ch = (char) (i+65); // 숫자를 영문 대문자로 변환
} else if (max == arr[i]) { // 같은게 여러개일때
ch = '?';
}
}
System.out.println(ch);
}
}
65(A) ~ 90(Z)
97(a) ~ 122(z)
char로 받을경우 10진수로 변환할때 위의 수만큼 빼서 사용하면 된다.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
// text.trim();
int blank = 0;
for (int i =0; i<text.length(); i++) {
if (text.charAt(i) == ' ') {
blank++;
}
}
if (text.charAt(0) == ' ') {
blank--;
}
if (text.charAt(text.length()-1) == ' ') {
blank--;
}
System.out.println(blank+1);
}
}
trim()이 걸러주지 못하는 띄어쓰기가 있었다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine()," ");
// 공백 기준으로 나눠진 것들
System.out.print(st.countTokens());
}
}
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine());
int A = Integer.parseInt(new StringBuilder(st.nextToken()).reverse().toString());
int B = Integer.parseInt(new StringBuilder(st.nextToken()).reverse().toString());
System.out.println((A < B) ? B:A);
}
}
stringBuilder공부필요
reverse()
toString()
public class Main
{
public static void main(String[] args)
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("문자열 ").append("연결");
// String str = stringBuilder; // String에 StringBuilder를 그대로 넣을 순 없다. toString()을 붙여야 한다
String str = stringBuilder.toString();
// 두 println()은 같은 값을 출력한다
System.out.println(stringBuilder);
System.out.println(str);
}
}
public class Main
{
public static void main(String[] args)
{
StringBuilder stringBuilder = new StringBuilder();
ArrayList<String> list = new ArrayList<>();
list.add("첫 번째, ");
list.add("두 번째, ");
list.add("세 번째, ");
list.add("네 번째, ");
list.add("다섯 번째");
for (int i = 0; i < list.size(); i++)
{
stringBuilder.append(list.get(i));
}
System.out.println(stringBuilder);
}
}
// >> 첫 번째, 두 번째, 세 번째, 네 번째, 다섯 번째
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
int sum = 0;
for (int i = 0; i<text.length(); i++) {
if (text.charAt(i) >= 87) {
sum+=10;
} else if (text.charAt(i) >= 84) {
sum+=9; // 3개짜리씩 가다가 4개짜리가 나와있었다... 문제를 잘 읽자
} else if (text.charAt(i) >= 80) {
sum+=8;
} else if (text.charAt(i) >= 77) {
sum+=7;
} else if (text.charAt(i) >= 74) {
sum+=6;
} else if (text.charAt(i) >= 71) {
sum+=5;
} else if (text.charAt(i) >= 68) {
sum+=4;
} else if (text.charAt(i) >= 65) {
sum+=3;
} else {
sum+=2;
}
}
System.out.println(sum);
}
}
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String str;
while ((str=bf.readLine())!=null) {
System.out.println(str);
}
}
}
이게 왜 문자열 문제에 있는거야...
import java.util.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String text = bf.readLine();
int indexNum = Integer.parseInt(bf.readLine());
char str = text.charAt(indexNum-1);
System.out.println(str);
}
}