728x90
반응형

하루 1문제 챌린지/Silver1 7

백준 2615번 오목(C++)🚩

푸는데 오래걸렸다.. 실버인데 못풀어? 이러면서 오른쪽 방향으로 가로/세로/우상향/우하향 을 탐색하는데 주의할것은 지금 위치 전이나, 지금 위치에서 5번째 떨어진곳에 자신과 같으면 안된다. #include #include using namespace std; int arr[20][20]={0}; int dr[4]={0,1,1,-1}; int dc[4]={1,0,1,1}; bool cnt=0; int main() { for(int i=1;iarr[i][j]; } } //연속으로 5개 //6개가 어딘가 있어도 되는가? //6개인데 5개일수도 있잔아 .. //모든 배열에 대해 탐색 for(int i=1;i

백준 2529번 부등호(C++) 🚩

서로 다른 3글자라서 조합을 nCm 해야하나? 했는데 결국 순서가 정해질테고 그냥 제일 상위몇개만 하면되었다.. 어렵다 #include #include #include #include using namespace std; //숫자 배열을 문자열로 string turn(vectorarr){ string tmp=""; for(int i=0;i>n; vectorarr(n); for(int i=0;i>arr[i]; } //조합을 해야하지 않을까? 했는데 그냥 상관업나 vectormins(n+1); vectormaxs(n+1); for(int i=0;i

백준 1080번 행렬(C++)🚩🚩

실버1인데 어려웠다.. 일단 행렬 A,B 를 n*m으로 하면 계속 입력이 잘안되었다. 접근 1.다른부분 처음에 정리 -> 하나씩 바꾸기 -> 끊임없이 바꾸기? -> 안되면 무한루프.. 체크한 다른 부분 계속 바뀌는데 계속 n*m 행렬 확인하면 비효율적.. 정답 3x3 행렬단위만 바꿀수 있으므로 n-3,m-3까지만 체크하고 (i,j)를 왼쪽 꼭지점으로 생각하면 여길 체크하면 다음부턴 체크 할 필요가 없어짐(바꿀수 없으므로). 하나하나 다바꿔보고 안되면 안되는것! #include #include using namespace std; int main() { int n,m; cin>>n>>m; vectorA(n); vectorB(n); //n*n 숫자 입력으로 하면 안됨 string tmp; for(int i=..

백준 2841번 외계인의 기타연주(C++)

https://www.acmicpc.net/problem/2841 2841번: 외계인의 기타 연주 첫째 줄에 멜로디에 포함되어 있는 음의 수 N과 한 줄에 있는 프렛의 수 P가 주어진다. (1 ≤ N ≤ 500,000, 2 ≤ P ≤ 300,000) 다음 N개 줄에는 멜로디의 한 음을 나타내는 두 정수가 주어진다. 첫 번째 www.acmicpc.net #include #include #include #include #include using namespace std; maparr; int main() { int n,p; cin>>n>>p; int cnt=0; int a,b; for(int i=0;i>a>>b; //줄 프랫번호 - 순서대로 연주해야 //손 떼고 누르는거 다 if(arr[a].empty())..

백준 15903번 카드합체놀이 (C++)

https://www.acmicpc.net/problem/15903 15903번: 카드 합체 놀이 첫 번째 줄에 카드의 개수를 나타내는 수 n(2 ≤ n ≤ 1,000)과 카드 합체를 몇 번 하는지를 나타내는 수 m(0 ≤ m ≤ 15×n)이 주어진다. 두 번째 줄에 맨 처음 카드의 상태를 나타내는 n개의 자연수 a1, www.acmicpc.net #include #include #include using namespace std; int main() { long long n,m; cin>>n>>m; vectorarr; arr.assign(n,0); for(int i=0;i>arr[i]; } sort(arr.begin(),arr.end()); while(m--){ //서로 다른 가장 작은 수 찾기 lon..

백준 16206번 롤케이크(C++)🚩

작은것부터, 10으로 먼저 나누어떨어지는것을 먼저 잘라야한다. 19,20 이렇게 있으면 20부터 잘라야한다. 반례를 찾는기 어렵다.. #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, m; cin >> n >> m; vectorarr; int s; for (int i = 0; i > s; arr.push_back(s); } sort(arr.begin(), arr.end()); int cnt = 0; vectorroll; vectorflag; flag.assign(n, 0); for (int i = ..

728x90
반응형