Notice
Recent Posts
Recent Comments
Link
Dev.baelanche
[백준 11575] Affine Cipher 본문
반응형
구현자체는 정말 쉬운 문제다.
for(int i=0; i<len; i++) {
x = ch[i] - 'A';
ch[i] = (char)(((a * x + b) % 26) + 'A');
}
수 치환은 위와 같은 방법으로 했다.
반복문안에서 함수호출을 하면 O(n^2)으로 시간초과가 발생하므로 이부분을 반!드!시! 조심해야 한다.
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int a, b, x, t, len;
char ch[];
t = Integer.parseInt(br.readLine());
while(t-->0) {
st = new StringTokenizer(br.readLine());
a = Integer.parseInt(st.nextToken());
b = Integer.parseInt(st.nextToken());
ch = br.readLine().toCharArray();
len = ch.length;
for(int i=0; i<len; i++) {
x = ch[i] - 'A';
ch[i] = (char)(((a * x + b) % 26) + 'A');
}
String s = new String(ch);
System.out.println(s);
}
}
}
반복문안에서는 배열값을 바꿔만 주고 외부에서 출력해주었다.
시ㅂ
반응형
'Data Structure & Algorithm > PS - JAVA' 카테고리의 다른 글
[백준 11580] Footprint (0) | 2019.07.23 |
---|---|
[백준 11578] 팀원 모집 (0) | 2019.07.23 |
[백준 13412] 서로소 쌍 (0) | 2019.07.20 |
[백준 13423] Three Dots (0) | 2019.07.20 |
[백준 13422] 도둑 (0) | 2019.07.20 |
Comments