๐ท๐ผ๋ชจ์ฌ๋ด์ ๊ฐ๋ฐ์์ฒ๐ท๐ผ
[JAVA/์ฝ๋ฉํ ์คํธ] ์ต๋ ๊ธธ์ด ์ฐ์๋ถ๋ถ์์ด ๋ณธ๋ฌธ
[JAVA/์ฝ๋ฉํ ์คํธ] ์ต๋ ๊ธธ์ด ์ฐ์๋ถ๋ถ์์ด
์์ผ์ด 2022. 1. 13. 01:36์ค๋ช
0๊ณผ 1๋ก ๊ตฌ์ฑ๋ ๊ธธ์ด๊ฐ N์ธ ์์ด์ด ์ฃผ์ด์ง๋๋ค. ์ฌ๋ฌ๋ถ์ ์ด ์์ด์์ ์ต๋ k๋ฒ์ 0์ 1๋ก ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ์ฌ๋ฌ๋ถ์ด ์ต๋ k๋ฒ์ ๋ณ๊ฒฝ์ ํตํด ์ด ์์ด์์ 1๋ก๋ง ๊ตฌ์ฑ๋ ์ต๋ ๊ธธ์ด์ ์ฐ์๋ถ๋ถ์์ด์ ์ฐพ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์.
๋ง์ฝ ๊ธธ์ด๊ฐ ๊ธธ์ด๊ฐ 14์ธ ๋ค์๊ณผ ๊ฐ์ ์์ด์ด ์ฃผ์ด์ง๊ณ k=2๋ผ๋ฉด
1 1 0 0 1 1 0 1 1 0 1 1 0 1
์ฌ๋ฌ๋ถ์ด ๋ง๋ค ์ ์๋ 1์ด ์ฐ์๋ ์ฐ์๋ถ๋ถ์์ด์
์ด๋ฉฐ ๊ทธ ๊ธธ์ด๋ 8์ ๋๋ค.
์ ๋ ฅ
์ฒซ ๋ฒ์งธ ์ค์ ์์ด์ ๊ธธ์ด์ธ ์์ฐ์ N(5<=N<100,000)์ด ์ฃผ์ด์ง๋๋ค.
๋ ๋ฒ์งธ ์ค์ N๊ธธ์ด์ 0๊ณผ 1๋ก ๊ตฌ์ฑ๋ ์์ด์ด ์ฃผ์ด์ง๋๋ค.
์ถ๋ ฅ
์ฒซ ์ค์ ์ต๋ ๊ธธ์ด๋ฅผ ์ถ๋ ฅํ์ธ์.
14 2
1 1 0 0 1 1 0 1 1 0 1 1 0 1
์ถ๋ ฅ
8
- ํ์ด
๋ฐ๋ณต๋ฌธ์ ๋๋ ค๊ฐ๋ฉฐ i๋ฅผ ์ค๋ฅธ์ชฝ ํฌ์ธํธ๋ก ์ก๊ณ , lt๋ก ์ผ์ชฝ ํฌ์ธํธ๋ฅผ ์ก์ 0์ ๊ฐฏ์๋ฅผ ์ธ์ด๊ฐ๋ฉฐ ๊ธธ์ด๋ฅผ ์ฌ๊ณ ์ด๋ฅผ ๋น๊ตํ์์
import java.util.*;
public class Main {
public static void solution(int a, int b, int[] array){
int result = 0;
int change = 0;
int cnt = 0;
int lt = 0;
for(int i=0; i<a; i++){
if(array[i] == 0){
change++;
}
while(b<change){
lt++;
if(array[lt] == 0){
change--;
}
}
cnt = i-lt;
if(result < cnt){
result = cnt;
}
}
System.out.println(result);
}
public static void main(String[] args) {
Main main = new Main();
Scanner kb = new Scanner(System.in);
int a = kb.nextInt();
int b = kb.nextInt();
int[] array = new int[a];
for(int i=0; i<a; i++){
array[i] = kb.nextInt();
}
Main.solution(a, b, array);
}
}
'๊ฐ๋ฐ > ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JAVA / ์ฝ๋ฉํ ์คํธ] ๊ณต์ฃผ ๊ตฌํ๊ธฐ (0) | 2022.01.15 |
---|---|
[JAVA/์ฝ๋ฉํ ์คํธ] ํฌ๋ ์ธ ์ธํ๋ฝ๊ธฐ(์นด์นด์ค) (0) | 2022.01.13 |
[JAVA/์ฝ๋ฉํ ์คํธ] ์ต๋ ์ ์ ๊ตฌํ๊ธฐ(DFS) (0) | 2021.11.30 |
[JAVA/์ฝ๋ฉํ ์คํธ] ๋ฐ๋์ด ์น์ฐจ(DFS) (0) | 2021.11.28 |
[JAVA/์ฝ๋ฉํ ์คํธ] ํฉ์ด ๊ฐ์ ๋ถ๋ถ์งํฉ (0) | 2021.11.22 |