λ¬Έμ
12782λ²: λΉνΈ μ°μ μ§μ
μ§νμ΄λ μ«μλ₯Ό μ’μνλ€. μ€λλ μ«μλ₯Ό κ°μ§κ³ λλ μ§νμ΄λ λ μ«μμ λΉνΈ μ°μ μ§μλ₯Ό ꡬν΄λ³΄μλ€. λΉνΈ μ°μ μ§μλ, 10μ§λ²μΌλ‘ λνλΈ λ μ μλ₯Ό μ΄μ§μλ‘ λνλ΄μμ λ, λ μ«μλ₯Ό κ°
www.acmicpc.net
μ½λ
#include <iostream>
#include <queue>
#include <algorithm>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
int T; cin>>T;
while(T--){
string a, b; cin>>a>>b;
queue<int> zero, one;
int ans = 0;
for(int i=0; i<a.length(); i++){
if(a[i] != b[i]){
if(a[i] == '0') zero.push(i);
else if(a[i] == '1') one.push(i);
}
}
int len = min(zero.size(), one.size());
while(len--){ // νλμ μ΄μ§μμμ μλ‘ λ€λ₯Έ μ리μ μλ λ μ«μμ μμΉλ₯Ό λ°κΎΌλ€.
swap(a[zero.front()], a[one.front()]);
zero.pop();
one.pop();
ans++;
}
for(int i=0; i<a.length(); i++){ // νλμ μ΄μ§μμμ μμμ μ리μ μ«μλ₯Ό 0 λλ 1λ‘ λ°κΎΌλ€.
if(a[i] != b[i]) ans++;
}
cout<<ans<<'\n';
}
}
νμ΄
AλΉνΈμ BλΉνΈκ° μ£Όμ΄μ‘μ λ AλΉνΈλ₯Ό B λΉνΈλ‘ μλμ λ μ°μ°μ κ°μ§κ³ λ§λ€ μ μλ μ΅μ μ°μ° νμλ₯Ό ꡬνλ λ¬Έμ μ λλ€.
- νλμ μ΄μ§μμμ μμμ μ리μ μ«μλ₯Ό 0 λλ 1λ‘ λ°κΎΌλ€.
- νλμ μ΄μ§μμμ μλ‘ λ€λ₯Έ μ리μ μλ λ μ«μμ μμΉλ₯Ό λ°κΎΌλ€.
2λ² μ°μ°μ μ΅λν μ¬μ©ν΄μΌ μ΅μ μ°μ° νμλ₯Ό λ§λ€ μ μμ΅λλ€. λ°λΌμ νμ΄ μμ΄λμ΄λ 2λ² μ°μ°μ μ΅λν μ¬μ©ν ν 1λ² μ°μ°μ μ΄μ©νλ©΄ λ©λλ€.
00110100 10010111
μμ κ°μ μμλ₯Ό κ°μ§κ³ μ λ¦¬ν΄ λ³΄κ² μ΅λλ€.
λ¨Όμ 2λ² μ°μ°μ μ΅λν μ¬μ©νκΈ° μν΄μ AλΉνΈμ BλΉνΈμ μΈλ±μ€λ₯Ό λΉκ΅ν΄ κ°λ©΄μ λΉνΈκ° λ€λ₯Ό κ²½μ° 0 μ«μμ 1 μ«μ κ°κ°μ μμΉλ₯Ό μλμ κ°μ΄ μ μ₯ν©λλ€.
- zero = [0, 6, 7]
- one = [2]
κ·Έ ν, λ μ€ μμ μ¬μ΄μ¦μ ν¬κΈ°λ§νΌ λ°λ³΅νλ©΄μ 0μ μμΉμ 1μ μμΉλ₯Ό λ³κ²½ν©λλ€. μμ κ²½μ° 00110100μ 0λ²μ§Έ μΈλ±μ€μ 2λ²μ§Έ μΈλ±μ€λ₯Ό λ³κ²½ν©λλ€.
κ·Έ ν , 1λ² μ°μ°μ μν΄ AλΉνΈμ BλΉνΈμ μΈλ±μ€λ₯Ό λΉκ΅ν΄ κ°λ©΄μ λΉνΈκ° λ€λ₯Ό κ²½μ° 0 λλ 1λ‘ λ°κΎΈλ μμ μ μννλ©΄ λ©λλ€.
'Algorithm π§π»βπ» > λ°±μ€(BOJ)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€,c++] 22858λ² - μμ 볡ꡬ(small) (0) | 2022.09.28 |
---|---|
[λ°±μ€,c++] 25644λ² - μ΅λ μμΉ (0) | 2022.09.28 |
[λ°±μ€,c++] 1309λ² - λλ¬Όμ (0) | 2022.09.27 |
[λ°±μ€,c++] 1038λ² - κ°μνλ μ (0) | 2022.09.27 |
[λ°±μ€,c++] 16935λ² - λ°°μ΄ λ리기 3 (0) | 2022.09.22 |
[λ°±μ€,c++] 10703λ² - μ μ± (0) | 2022.09.21 |
λκΈ