๋ฐ์ํ
https://codeforces.com/problemset/problem/1167/A
์ฝ๋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int t = scan.nextInt();
for(int tc=0; tc<t; tc++) {
int n = scan.nextInt(); // ๋ฌธ์์ด ๊ธธ์ด
String s = scan.next(); // ๋ฌธ์์ด
StringBuilder sb = new StringBuilder(s);
String result = "";
while(true) {
// ์ฒซ๋ฒ์งธ ๋ฌธ์๊ฐ 8๋ก ์์ํ๊ฑฐ๋ ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 11๋ณด๋ค ์์์ง๊ฒฝ์ฐ ๋ฉ์ถ๋ค.
if(sb.charAt(0) == '8' || sb.length() < 11)
break;
// 8๋ก ์์ํ์ง ์๋๊ฒฝ์ฐ ๋ฌธ์ ์ ๊ฑฐ
else
sb.delete(0, 1);
}
// ์ฒซ๋ฒ์งธ ๋ฌธ์๊ฐ 8๋ก ์์ํ๊ณ ๋ฌธ์์ด ๊ธธ์ด๊ฐ 11์ด์์ด๋ฉด telephone number์.
result = (sb.length()>=11) ? "YES" : "NO";
System.out.println(result);
}
scan.close();
}
}
ํ์ด
์ฃผ์ด์ง ๋ฌธ์์ด์์ ๋ฌธ์๋ฅผ ์ญ์ ํ๊ฑฐ๋ ์ญ์ ํ์ง ์๊ณ , Telephone Number๊ฐ ๋๋์ง ํ์ธํ๋ ๋ฌธ์ .
Telephone Number
1) ๋ฌธ์์ด์ด '8'๋ก ์์ํ๊ณ
2) ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 11์ธ ๊ฒฝ์ฐ
๋ฐ๋ผ์ ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ฅผ '8'์ด ๋์ฌ๋ ๊น์ง ๊ณ์ ์ ๊ฑฐํ๊ณ , ๋ฌธ์์ด ๊ธธ์ด๊ฐ 11๋ณด๋ค ํฐ์ง ์์์ง ๋น๊ตํ๋ฉด ๋๋ค.
- ๋ฌธ์์ด์ ์ฝ์ &์ญ์ ๊ฐ ์ฉ์ดํ StringBuilder ํด๋์ค๋ฅผ ์ฌ์ฉํด ๋ฌธ์์ด์ ๋ณํํ๋ค.
- ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๊ฐ '8'์ด ์๋๊ฒฝ์ฐ ๋ฌธ์๋ฅผ ์ ๊ฑฐํ๋ค.
- ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ๋ฌธ์๊ฐ '8'์ด๊ฑฐ๋ ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 11๋ณด๋ค ์์๊ฒฝ์ฐ -> While ํ์ถ.
- While๋ฌธ์ ํ์ถํ์๋, ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 11๋ณด๋ค ํฌ๋ฉด "YES", 11๋ณด๋ค์์ผ๋ฉด "NO"
- (์๋ฌด ๋ฌธ์๋ ์ ๊ฑฐํด์ ๋ฌธ์์ด๊ธธ์ด๋ฅผ 11๋ก ๋ง๋ค๋ฉด ๋๋ค)
๋ฐ์ํ
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 9933๋ฒ: ๋ฏผ๊ท ์ด์ ๋น๋ฐ๋ฒํธ(๋ฌธ์์ด) (0) | 2020.03.27 |
---|---|
[๋ฐฑ์ค] 5567๋ฒ: ๊ฒฐํผ์(๊ทธ๋ํ, ๊ตฌํ) (0) | 2020.03.26 |
Java ๊ด๋ จ ๋ฉด์ ์ค๋น 2 (0) | 2020.03.26 |
Java ๊ด๋ จ ๋ฉด์ ์ค๋น 1 (2) | 2020.03.26 |
ํ๋ก๊ทธ๋๋จธ์ค[Java] - (Level2)์ ๋ง๋๊ธฐ(์คํ/ํ) (0) | 2020.03.25 |
๋๊ธ